MongoDB在Ubuntu上如何实现数据恢复

在Ubuntu上恢复MongoDB数据常用方法如下:

  1. 使用mongorestore恢复备份数据

    • 停止MongoDB服务:sudo systemctl stop mongod
    • 执行恢复命令:mongorestore --db <数据库名> <备份目录>,如mongorestore --db mydb /backup/mydb
    • 可选:添加--drop选项删除现有数据(谨慎使用)。
    • 启动服务:sudo systemctl start mongod
  2. 利用Oplog恢复(适用于误删或故障)

    • 确保Oplog已启用(默认开启),通过rs.conf()查看复制集配置。
    • 重放Oplog操作:mongorestore --db <数据库名> --oplogReplay <备份目录>
  3. 使用WT工具修复数据文件(数据损坏时)

    • 停止服务并备份数据文件。
    • 运行修复命令:mongod --dbpath /var/lib/mongodb --repair
    • 重新启动服务并验证数据。

注意事项

  • 恢复前确保备份完整,停止写操作避免数据冲突。
  • 定期备份数据,优先使用自动化脚本(如crontab+mongodump)。
  • 操作前建议在测试环境验证恢复流程。

参考来源:[1,2,3,4,5,6,7,9,10,11]