1.查看pymongo版本: 結果爲3.2
pip list -v
2.查看mongoDB版本: 結果爲2.6
在mongo終端中輸入
db.version()
mongoDB有不同的認證機制,3.0版本以後採用的是’SCRAM-SHA-1’, 之前的版本採用的是’MONGODB-CR’。所以,以我的版本情況,顯然應該用’MONGODB-CR’
用下面的方法連接,就成功了。
host = '192.168.xx.xx'
client = pymongo.MongoClient(host)
client.adb.authenticate("userA", "password", mechanism='MONGODB-CR')
db = client["adb"]
collection = db["acol"]
或者
mongo_url = 'mongodb://{0}:{1}@{2}:{3}/?authSource={4}&authMechanism=SCRAM-SHA-1'.format(username, password, host, port,db)
clinet = MongoClient(mongo_url)