私はmongodump
mongodbのデータベースをダンプするために使用しました、それは下にいくつかのbsonファイルを作成しましたdump/mydb
でも使い方がわかりません。試しmongoimport
ましたが、bsonデータをインポートできないようです。次に、これらのbsonファイルを使用する方法は?それらを別のmongodbにインポートする方法は?
私はmongodump
mongodbのデータベースをダンプするために使用しました、それは下にいくつかのbsonファイルを作成しましたdump/mydb
でも使い方がわかりません。試しmongoimport
ましたが、bsonデータをインポートできないようです。次に、これらのbsonファイルを使用する方法は?それらを別のmongodbにインポートする方法は?
jsonやcsvなどのインポートに使用されるmongoimport...ではなく、mongorestoreを使用する必要があります。
back-up-with-mongodump
ドキュメントから:
mongodump
MongoDBデータベースからデータを読み取り、ツールがMongoDBデータベースにデータを入力するために使用できる忠実度の高いBSONファイルを作成しmongorestore
ます。
mongodump
は、mongorestore
小規模なMongoDBデプロイメントをバックアップおよび復元するためのシンプルで効率的なツールですが、大規模なシステムのバックアップをキャプチャするのには理想的ではありません。
以下のドキュメントでmongorestoreの詳細を読むことができます。それらは非常に役立つので、私はそれらを見て読んでいきます。
http://www.mongodb.org/display/DOCS/Import+Export+Tools#ImportExportTools-mongorestore
ヒントとヘルプについては、http://learnmongo.comをチェックすることもできます。
私は毎日のバックアップとバックアップからの復元にmongodump、mongorestoreを使用しています。私は2つの.bat
ファイルを持っています:
最初に、バックアップのために、あなたはただホストデータベース名とバックアップフォルダを指定する必要があります:
SET host=localhost:27020
SET dbNameToDump=MyDB
SET backupsFolder=Backups
mongodump.exe --host %host% --db %dbNameToDump%
SET date="%date:~10,4%-%date:~4,2%-%date:~7,2%.%time:~0,2%-%time:~3,2%"
cd %backupsFolder%
md %date%
xcopy /e ..\dump %date%
rmdir /s /q ..\dump
batファイルの上2011-03-31.11-17(yyyy-MM-dd.hh-ss)
に、指定されたデータベースからダンプされたコレクションを含むバックアップフォルダーにこのような名前のフォルダーを作成します。ファイルエクスプローラーでは、次のようになります。
指定されたダンプファイルを復元するために使用する2番目のbatファイル(ここでは、データベース名とダンプされたファイルのあるフォルダーも指定する必要があります):
SET host=localhost:27020
SET dbNameToRestore=MyDB
SET restoreFolder=Restore
mongorestore.exe --host %host% --db %dbNameToRestore% %restoreFolder%
ファイルエクスプローラーの場合:
さらに、バックアッププロセスを自動化するためにWindowsスケジュールを使用しています。
上記の情報が誰かに役立つことを願っています。
前の回答で述べたように、のmongorestore
代わりにを使用する必要がありmongoimport
ます。前の回答に加えて、mongodbが実行されているときに、次のコマンドを実行して、ダンプディレクトリからダンプを復元します。
mongorestore dump
これにより、すべてのコレクションがmydbデータベースにインポートされます。ただし、これは復元する前にデータベースを削除しません。インポートする前にデータベースを削除する場合は、
mongorestore --drop dump
mydbディレクトリ内のbsonファイルは、mydbデータベース内のコレクションとして復元されます。mongorestoreの詳細については、こちらのドキュメントを確認してください。
mongorestoreを使用します。mongoimportは、mongoexportの出力で機能します。mongodumpとmongorestoreはバイナリデータファイルで動作し、インポート/エクスポートはjson、csvなどで動作します。(人間が読める形式)
これを解決するために、ダンプフォルダーdbdump(bsonファイルを含む)をmongodbのbinディレクトリにコピーし、コマンドプロンプトで次のコマンドを実行しました。
1. cd「MongoDBのbinフォルダーへのパス」
(例:cd C:\ Program Files \ MongoDB \ Server \ 3.2 \ bin)
2. mongorestore.exe --dir ./directory name --db database-name
(例:mongorestore --dir ./dbdump --db testdb)
ダンプフォルダ内のすべてのbsonファイルがデータベースにインポートされます。以下のコマンドを実行することで、これを確認できます。cd
"MongoDBのbinフォルダーへのパス"
mongo.exeshow
dbs;
mongoバージョン3以降の場合は、以下のコマンドを使用します。
mongorestore --host=localhost --port=27017 --username=root --authenticationDatabase=admin --db=test dump_folder/
その後、Mongoはパスワードを尋ねます