viren Asked: 2014-07-15 23:19:23 +0800 CST2014-07-15 23:19:23 +0800 CST 2014-07-15 23:19:23 +0800 CST 如何确认 DB 上的块传输已完成 772 我有一个案例,我为每日数据创建数据库。我在这个数据库中有一些集合是分片的。我的要求如下:每天创建数据库 如果有一个数据库存在时间超过 7 天,则将其转储到某个位置并将其从实时数据库中删除。 我有一个问题,如何在转储并删除它之前检查该数据库的块传输/平衡是否已完成。我担心如果删除未完成传输的数据库是否会损坏我的系统 问候 Virendra Agarwal backup mongodb 1 个回答 Voted Best Answer Stennie 2014-08-18T20:02:27+08:002014-08-18T20:02:27+08:00 为确保在进行备份时没有正在进行的迁移,您应该通过停止平衡器sh.stopBalancer()。任何正在进行的迁移都将在平衡器被禁用之前完成。 如果你想确保平衡器在备份之前停止mongo,你可以在shell中运行以下命令,它应该返回true: !sh.getBalancerState() && !sh.isBalancerRunning() 进行备份后,您需要记住再次启动平衡器。
为确保在进行备份时没有正在进行的迁移,您应该通过停止平衡器
sh.stopBalancer()
。任何正在进行的迁移都将在平衡器被禁用之前完成。如果你想确保平衡器在备份之前停止
mongo
,你可以在shell中运行以下命令,它应该返回true
:进行备份后,您需要记住再次启动平衡器。