MongoDBの基本操作(その3)

MongoDBの基本操作その3。DBのバックアップ、リストアなど。

DBのバックアップ

mongodumpコマンドを使ってバックアップを作成する。
DBが起動している状態で、ターミナル(コマンドプロンプト)からコマンドを実行する。

> mongodump
2015-10-18T18:46:33.339+0900    writing sample_db.sample_collection to dump/sample_db/sample_collection.bson
2015-10-18T18:46:33.341+0900    writing sample_db.sample_collection metadata to dump/sample_db/sample_collection.metadata.json
2015-10-18T18:46:33.343+0900    done dumping sample_db.sample_collection (5 documents)

完了すると、実行したディレクトリにdump/[DBフォルダ]以下が作成されて、データがbson、json形式でファイル保存される。

DBのリストア

mongorestoreコマンドを使用する。
実行すると、ダンプファイルから復元するが、基本的にinsertだけなので、一旦DBを削除してから実行する。DB削除はdb.dropDatabase()を使うが、コマンドライン上からは実行する場合、evalオプションを使う。mongodコマンドでDBを起動した状態で以下を実行する。

> mongo sample_db --eval "db.dropDatabase()"
:
> mongorestore ./dump
2015-10-18T18:40:33.954+0900    building a list of dbs and collections to restore from ./dump dir
2015-10-18T18:40:33.956+0900    reading metadata file from dump/sample_db/sample_collection.metadata.json
2015-10-18T18:40:33.961+0900    restoring sample_db.sample_collection from file dump/sample_db/sample_collection.parts.bson
2015-10-18T18:40:34.437+0900    finished restoring sample_db.sample_collection (5 documents)
2015-10-18T18:40:34.437+0900    done