0

最初に mongodb をセットアップしたとき、データが/data/db意図したとおりに書き込まれていないため、何か間違ったことをしたに違いありません。データがどこに保存されているのかわかりません (ファインダーで db naem を検索しても結果が返されず、使用されている現在のディレクトリを見つける方法をドキュメントで見つけることができません)。既存のすべてのデータを新しい場所に確実に移動しながら、目的のディレクトリを使用するようにmongodbを安全に指定するにはどうすればよいですか?

4

1 に答える 1

1

dbpath を変更する方法は、mongod インスタンスを停止し、dbpath ディレクトリの内容を新しい場所にコピーしてから、新しい dbpath パラメータを適切に設定して再起動することです。

まず、dbpath の現在の設定を確認するために、getCmdLineOpts コマンドを使用できます。mongo シェルから使用する方法は次のとおりです。

> db.serverCmdLineOpts()
{
    "argv" : [
        "mongod",
        "--config=/Users/dstorch/foo.conf"
    ],
    "parsed" : {
        "config" : "/Users/dstorch/foo.conf",
        "dbpath" : "/data/db"
    },
    "ok" : 1
}

ご覧のとおり、「parsed.dbpath」は dbpath の現在の値を示します。

dbpath を /data/db から /data/db2 に変更したいとします。まず、mongod をシャットダウンする必要があります。これを行うには、Control-C または を使用して SIGTERM を送信しkill <pid>ます。3 番目のオプションは、shutdownコマンドを実行することです。

mongod が安全に終了したら、データを新しい場所にコピーし、新しい dbpath で再起動します。

cp -r /data/db /data/db2
mongod --dbpath /data/db2
于 2013-09-19T14:28:13.847 に答える