問題:使用python腳本對伺服器上的mongodb某表的記錄進行增删改查操作
解決方法: 可以使用pymongo子產品實作對mongodb的增删改查
limit: pymongo現在不能處理ssl pem key passsword參數,是以,如果需要自動輸入ssl pem key password的場景不适合用pymongo子產品。可以使用指令行操作mongodb。
測試環境:linux mint17.3 + mongodb 2.4.9 + python3.4
mongodb的初始狀态:
![](https://img.laitimes.com/img/9ZDMuAjOiMmIsIjOiQnIsIiN2gTO1IDNzIjMxUDM2EDMy8CX0Vmbu4GZzNmLn9Gbi1yZtl2Lc9CX6MHc0RHaiojIsJye.jpg)
建立一個collection:
代碼實作:
#!/usr/bin/env python3
# -*- coding: utf-8 -*-
from pymongo import MongoClient
import pprint
#連接配接到資料庫
conn = MongoClient(host="127.0.0.1", port=) #connect to mongodb
db = conn.test
#查一個collection
print(db.test_collection)
print("test_collection")
array = db.test_collection.find()
for doc in array:
print(doc)
#增加一個document
insert_doc = {"name":"test2", "age":}
db.test_collection.insert(insert_doc)
print(db.test_collection)
print("after inserting:")
array = list(db.test_collection.find())
pprint.pprint(array)
#修改記錄
db.collection.update({"name":"test"},{"$set":{"age":}})
print(db.test_collection)
print("after updating:")
array = list(db.test_collection.find())
pprint.pprint(array)
#删除一個collection中的所有資料
db.test_collection.remove({})
print(db.test_collection)
print("after deleting:")
array = list(db.test_collection.find())
pprint.pprint(array)
運作結果:
參考:
pymongo:
How can I pass –sslPEMKeyPassword using pymongo
mongod and mongos SSL Configuration
Unable to provide sslPEMKeyPassword option in pymongo
mongo_client – Tools for connecting to MongoDB: SSL configuration
PyMongo安裝和使用
MongoDB的連接配接:Connection()與MongoClient() 1
mongo資料庫基本操作–python篇
pymongo更新資料 使用方法
MongoDB:好好說說mongodb的增删改查