MongoDB 在 Debian 上的数据恢复方法

以下是 Debian 上 MongoDB 的数据恢复方法:

  1. 使用备份文件恢复

    • mongorestore 命令从备份文件恢复数据,支持全量或增量恢复。
    • 示例:mongorestore --db dbname /path/to/backup
  2. 利用 Oplog 恢复

    • 通过回放操作日志(Oplog)还原数据变更,适用于副本集或未关闭写操作的场景。
    • 需先备份 Oplog,再通过 mongorestore --oplogReplay 恢复。
  3. 副本集自动恢复

    • 若配置了副本集,故障节点可自动从其他节点同步数据,无需手动操作。
  4. 修复损坏数据文件

    • 使用 mongod --repair 命令修复损坏的 WiredTiger 数据文件,可能重建索引导致部分数据丢失。
    • 操作前需停止服务并备份数据文件。
  5. 第三方工具恢复

    • 如 MongoDB Repair、WiredTiger Salvage 工具,用于修复损坏的数据库文件或提取数据。

注意事项

  • 恢复前确保备份/Oplog 数据最新,停止写操作避免数据覆盖。
  • 优先通过备份恢复,工具恢复可能丢失部分数据,谨慎使用。