主要使用mongodb的命令行实现,请专家解答
收起补充TF的回答
1、mongodump
可以通过Oplog备份,做增量备份和增量恢复
2、文件系统快照
db.fsyncLock()只能锁住sever层,无法锁住engine层。建议等engine脏数据刷盘后,再进行备份。
或者直接锁系统层面的
3、备份secondary节点
有延迟备份节点概念,也可以当做应急恢复
其他
分片环境的备份任意时间点恢复,一般是停止config的rebalance,然后备份oplog。保证恢复的一致性点。
percona提供了shard环境的一致性备份工具(开源)mongodb_consistent_backup
另外,percona发行版的mongodb,提供了物理备份的工具