如何关闭 mongodb python 连接?
Posted
技术标签:
【中文标题】如何关闭 mongodb python 连接?【英文标题】:How to close a mongodb python connection? 【发布时间】:2013-08-26 09:33:04 【问题描述】:我正在编写一个将一些数据写入 mongodb 的 python 脚本。 完成后,我需要关闭连接并释放一些资源。
这是如何在 Python 中完成的?
【问题讨论】:
【参考方案1】:在您的 MongoClient
实例上使用 close()
方法:
client = pymongo.MongoClient()
# some code here
client.close()
close()
是disconnect()
方法的别名:
断开连接将关闭连接中的所有底层套接字 水池。如果再次使用此实例,它将自动 重新打开。
【讨论】:
而且disconnect
不再可从 pymongo 3.x 获得
@alecxe,有什么方法或形式知道connect daba基地是否关闭?
在 Jupyter Notebook 中,在 .close() 之后我仍然可以查询数据库。是自动重连吗?
@NikhilVJ 在上面的answer
,它说:Disconnecting will close all underlying sockets in the connection pool. If this instance is used again it will be automatically re-opened.
【参考方案2】:
关闭 pymongo 连接的最安全方法是将其与 'with' 一起使用:
with pymongo.MongoClient(db_config['HOST']) as client:
db = client[ db_config['NAME']]
item = db["document"].find_one('id':1)
print(item)
【讨论】:
以上是关于如何关闭 mongodb python 连接?的主要内容,如果未能解决你的问题,请参考以下文章
MongoDB:异步函数未完成或如何正确关闭与 mongoose 的连接