Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
我的 mongodb 应该每天运行一次备份。它由一个主设备和两个从设备运行。
我需要备份其中一个(因为它们只是副本)
最简单的方法是仅在一个实例上运行备份脚本。但是如果这个实例关闭了怎么办?所以我认为在主服务器上运行备份脚本会很好,因为总是有一个主服务器,即使其他主服务器之一关闭。
所以我需要在 cron.daily 中调整我的备份脚本来询问 mongodb 是否是当前的主控。
我怎么做?
您可以使用该--eval选项来mongo执行此操作:
--eval
mongo
MASTER=`mongo --quiet --eval "db.isMaster().ismaster"`
然后测试是否MASTER == "true"在你的shell脚本中。
MASTER == "true"