1.Pymongo PyMongo是Mongodb的Python介面開發包,是使用python和Mongodb的推薦方式。 官方文檔 2.安裝 通過ObjectId來查找 通過ObjectId來查找 不要轉化ObjectId的類型為String 不要轉化ObjectId的類型為String 如果po ...
1.Pymongo
PyMongo是Mongodb的Python介面開發包,是使用python和Mongodb的推薦方式。
官方文檔
2.安裝
-
通過ObjectId來查找
>>> post_id ObjectId(...)
>>> posts.find_one({"_id": post_id})
{u'date': datetime.datetime(...), u'text': u'My first blog post!', u'_id': ObjectId('...'), u'author': u'Mike', u'tags': [u'mongodb', u'python', u'pymongo']}
-
不要轉化ObjectId的類型為String
>>> post_id_as_str = str(post_id)
>>> posts.find_one({"_id": post_id_as_str}) # No result >>>
-
如果post_id是字元串
from bson.objectid import ObjectId
# The web framework gets post_id from the URL and passes it as a string def get(post_id):
# Convert from string to ObjectId:
document = client.db.collection.find_one({'_id': ObjectId(post_id)})
4.mongoDB其它操作
1.超級管理員
-
為了更安全的訪問mongodb,需要訪問者提供用戶名和密碼,於是需要在mongodb中創建用戶
採用了角色-用戶-資料庫的安全管理方式
常用系統角色如下:
-
啟用安全認證
修改配置文件
sudo vi /etc/mongod.conf
-
啟用身份驗證
註意:keys and values之間一定要加空格, 否則解析會報錯
security:
authorization: enabled
-
重啟服務
sudo service mongod stop
sudo service mongod start
-
終端連接
mongo -u 'admin' -p '123' --authenticationDatabase 'admin'
-
普通用戶管理
使用超級管理員登錄,然後進入用戶管理操作
查看當前資料庫的用戶
2.主從雙備
複製的優點
-
複製提供了數據的冗餘備份,併在多個伺服器上存儲數據副本,提高了數據的可用性,並可以保證數據的安全性
-
複製還允許從硬體故障和服務中斷中恢複數據
-
step8:新開視窗,連接第二個mongo服務
mongo --host 192.168.10.111 --port 27019
-
step9:向主伺服器中插入數據
use test1for(i=0;i<10;i++){db.t1.insert({_id:i})}
db.t1.find()
3.備份
-
語法
5.Mongodb與python交互
-
之前學習了爬蟲,現在我們把爬取得到的數據存儲於Mongodb中
-
開啟mongo,運行代碼
通過Robo 3T可視化工具我們可以看到抓取到了137條數據,並且已存儲到mongodb中
6.完成命令行項目:學生信息管理(基於Python2.7)
-
代碼操作
已成功!
歡迎大家關註我的博客:https://home.cnblogs.com/u/sm123456/
歡迎大家加入千人交流答疑群:125240963