mongodb 网站上没有关于
db.stats().ok
含义的文档 https://www.mongodb.com/docs/manual/reference/method/db.stats/.
例如我想检查与数据库的连接是否正常。我可以这样做吗
db.stats().ok === 1
。这对我的目的是否正确(看起来像,但没有文档很难说),还有更好的方法来检查健康的 mongo 连接吗?
我建议
db.getMongo()
(文档这里)。命令 db.stats()
需要对当前数据库的读取权限,该权限可能会丢失。在这种情况下,尽管 MongoDB 运行良好,db.stats()
仍会失败。
db.getMongo()
不需要任何权限,即使没有任何凭据也可以连接!
mongosh "mongodb://localhost:27017" --norc --quiet --eval 'db.getMongo()'
mongodb://localhost:27017/?directConnection=true&serverSelectionTimeoutMS=2000&appName=mongosh+1.6.0
echo $?
0
$ mongosh "mongodb://xxxx:27017" --norc --quiet --eval 'db.getMongo()'
MongoNetworkError: getaddrinfo ENOTFOUND xxxx
echo $?
1