Pages

2011/04/11

mongodbのrepair時、パーミッションに注意

壊れたmongodbを修復するにはオプション、"--repair" をつけてmongodコマンドを実行します。

mongod --dbpath=/var/lib/mongodb --repair


これで修復したmongodbが起動しない時はパーミッションが変更されているせいかも。


DBの実ファイルのパーミッションがrepairを実行したユーザになります。
rootでrepairしちゃうと、DBのファイルがroot所有になってしまうということですね。


ログを確認したら"Permission denied" が出ていたのでパーミッションを修正しました。
chown -R mongodb:nogroup /var/lib/mongodb/



環境はUbuntu10.10、MongoDB1.8.1 でした。
 

どうやったらMongodbが要修復になるかっていうと、例えば無限ループをdiskfullになるまで突っ込んでみるとか。。
 

0 件のコメント:

コメントを投稿