MongoDB與python交互!這才是正確玩轉數據庫的正確方式!
阿新 • • 發佈:2018-05-18
恢復數據 cati ring img step ica BE ODB enable
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
MongoDB與python交互!這才是正確玩轉數據庫的正確方式!