mongod
の場合 修復ではそれが行われず、起動するデータベースファイルの有効で正しいセットがあるという点で修正または回避できないレベルの破損が発生しています。
mongodump
を実行できます 修理あり
、これは破損を回避しようとするという点でより積極的であり、mongod
を開始していません インスタンス(したがって、続行するためにファイルが正しい必要はありません)。
mongodump --repair --dbpath /var/lib/mongodb/ <other options here>
ただし、破損を回避しようとする方法のために、ドキュメントの複数のコピーが作成される可能性があることに注意してください。 mongorestore
これは問題ではありませんが、破損のレベルによっては、予想よりもはるかに大きなダンプファイルが作成される可能性があります。非常に極端なケースでは、10倍のデータが生成されるのを見たことがありますが、それはルールではなく例外でした。
すべてを満足のいくようにダンプしたら、mongod
を開始します クリーンアップして再インポートし、良好な状態に戻します。