Successfully added user: {
"user" : "ash",
"roles" : [
{
"role" : "readWrite",
"db" : "myDB"
},
"clusterAdmin"
]
我正在尝试实现一个任务,只有当pymongo存在连接时,然后返回True以便函数可以继续,否则它应该返回False并检查连接的消息。所以我们不要再继续了。
我怎样才能做到这一点?
编辑1:接受的解决方案
DB_NAME = "myDB"
client = MongoClient('localhost',27017)
db = client[DB_NAME]
def db_connect():
#connecting to a DB in mongoDB
try:
if db.authenticate("ash","password"):
print("Connection Successful!")
return True
except:
print("Please check your connection")
return False
def db_close():
print ("Connection Getting Closed")
client.close()
if __name__ == "__main__":
db_connect()
db_close()
}
我使用上面的代码段添加了一个用户,然后使用了以下脚本。
{{1}}
我已使用此代码段连接到我的数据库 现在连接到DB 我的PC上有数据库,我使用的是Ubuntu 16.04。
答案 0 :(得分:1)
你可能不得不在连接函数中使用authenticate
方法,所以你可以这样做:
In [12]: client = MongoClient(DB_MACHINE, DB_PORT)
In [13]: db = client.db_name
In [16]: if db.authenticate(DB_USER, DB_PASS, source=DB_SOURCE):
# authenticated, do ...
else:
# not authenticated, not connected, do something else