69

私はmongodumpmongodbのデータベースをダンプするために使用しました、それは下にいくつかのbsonファイルを作成しましたdump/mydb

でも使い方がわかりません。試しmongoimportましたが、bsonデータをインポートできないようです。次に、これらのbsonファイルを使用する方法は?それらを別のmongodbにインポートする方法は?

4

6 に答える 6

69

jsonやcsvなどのインポートに使用されるmongoimport...ではなく、mongorestore使用する必要があります。

back-up-with-mongodumpドキュメントから:

mongodumpMongoDBデータベースからデータを読み取り、ツールがMongoDBデータベースにデータを入力するために使用できる忠実度の高いBSONファイルを作成しmongorestoreます。

mongodumpは、mongorestore小規模なMongoDBデプロイメントをバックアップおよび復元するためのシンプルで効率的なツールですが、大規模なシステムのバックアップをキャプチャするのには理想的ではありません。

以下のドキュメントでmongorestoreの詳細を読むことができます。それらは非常に役立つので、私はそれらを見て読んでいきます。

http://www.mongodb.org/display/DOCS/Import+Export+Tools#ImportExportTools-mongorestore

ヒントとヘルプについては、http://learnmongo.comをチェックすることもできます。

于 2011-03-31T05:12:16.733 に答える
38

私は毎日のバックアップとバックアップからの復元にmongodumpmongorestoreを使用しています。私は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スケジュールを使用しています。

上記の情報が誰かに役立つことを願っています。

于 2011-03-31T08:30:00.237 に答える
10

前の回答で述べたように、のmongorestore代わりにを使用する必要がありmongoimportます。前の回答に加えて、mongodbが実行されているときに、次のコマンドを実行して、ダンプディレクトリからダンプを復元します。

mongorestore dump

これにより、すべてのコレクションがmydbデータベースにインポートされます。ただし、これは復元する前にデータベースを削除しません。インポートする前にデータベースを削除する場合は、

mongorestore --drop dump

mydbディレクトリ内のbsonファイルは、mydbデータベース内のコレクションとして復元されます。mongorestoreの詳細については、こちらのドキュメントを確認してください。

于 2016-08-25T05:51:50.677 に答える
6

mongorestoreを使用します。mongoimportは、mongoexportの出力で機能します。mongodumpとmongorestoreはバイナリデータファイルで動作し、インポート/エクスポートはjson、csvなどで動作します。(人間が読める形式)

于 2011-03-31T05:08:33.427 に答える
3

これを解決するために、ダンプフォルダー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;

于 2016-04-20T19:09:14.827 に答える
1

mongoバージョン3以降の場合は、以下のコマンドを使用します。

mongorestore --host=localhost --port=27017 --username=root --authenticationDatabase=admin --db=test dump_folder/

その後、Mongoはパスワードを尋ねます

于 2019-10-15T12:28:38.177 に答える