如何使用Pymongo管理Replicaset

问题描述

这是我的问题。 我需要检查Mongo集群是否已成功创建。 通常,使用self.driver = driver self.driver.implicitly_wait(10) 命令。 但这需要我手动进入Mongo命令面板,这对懒惰的人并不友好。 因此,我想使用Pymongo来实现rs.status()命令。 因此,如果您知道如何使用Pymongo或其他更好的方法来实现rs.status()来检查集群是否成功,请首先告诉我。谢谢。

解决方法

db.command允许对mongodb命令的低级别访问。要获取副本集状态,请使用replSetGetStatus

from pymongo import MongoClient

# NB Must be a replica set
# Must be connected to the admin database
db = MongoClient()['admin']

rs_status = db.command({'replSetGetStatus': 1})
print(rs_status)