我是 C++ 的初学者。我关注了http://mongodb.github.io/mongo-cxx-driver/mongocxx-v3/tutorial/本教程。他们告诉连接到一个正在运行的 MongoDB 实例,使用 mongocxx::client
类。我这样做过
mongocxx::client conn_;
conn_ = mongocxx::client(mongocxx::uri{uri});
if(!conn_){
std::cout<<"db is not started";
}else{
std::cout<<"db is started";
}
如果 mongodb 没有启动,它必须打印“db is not started”但是上面的代码似乎没有工作。 请建议我如何在启动应用程序之前检查 mongodb 是否正在运行
最佳答案
原则上,MongoDB 被设计为一个分布式系统,每个组件都可能发生故障。最好的建议是为您对数据库执行的每个查询失败做好准备。
如果尽管如此,你仍然想测试它,最简单的方法是向 MongoDB 发送命令。使用 mongocxx::database::run_command
将 {"ismaster": 1}
命令发送到管理数据库。
关于c++ - 如何在启动 C++ 应用程序时检查 mongodb 是否正在运行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47635375/