MongoDB バックアップとリストアについてまとめ

  • このエントリーをはてなブックマークに追加
  • Pocket

MongoDBのバックアップとリストアの方法についてのメモ。

コマンドはmongodumpとmongorestore.

バックアップについて

 

Mongoのバックアップ方法には以下の2通りの方法がある。

  1. データファイルをコピー
  2. mongodumpを利用

データファイルのコピーはそのまんま。
実体ファイルをコピーするだけでOK.

ただ、コピーする間はDBを停止するかロックする必要があるため少し面倒。

ここではmongodumpを使用した方法を記述。
尚、データファイルのコピーと比較した結果は以下の通り。

メリット

  • オンラインで可能
  • 比較的ファイルサイズが小さい

デメリット

  • データの変換に時間がかかる

mongodumpの実行方法

MongoDBを起動したままで mongodump を実行する。

この際に “–out” オプションを付けるとダンプの吐き出し先を変更できる。
オプションを付けない場合はカレントディレクトリに保存される。

もちろんDBを指定してダンプすることも可能。

吐き出し先にDBの名前ディレクトリが作成されている。

他にも<ホスト>:<ポート>指定でデフォルトポート以外で動作しているMongoDBのインスタンスにも接続できる。

それはマニュアルを参照。

http://jp.docs.mongodb.org/manual/reference/program/mongodump/

リストアについて

リストアについても2通りの方法がある。

  1. コピーしたデータファイルをDBの指定先に配置する
  2. mongodumpで作成したダンプをmongorestoreする

リストアについての注意

mongorestoreはinsert処理しか行わないため、完全に戻したい場合は、一旦、すべてのデータベースを削除するかデータファイルごと消し去る必要がある。

なので

を実施した後にリストア実行が望ましい気がする。

mongorestoreを使用してリストア

実行の際に注意する事項はあるが、コマンド自体は特に難しいことはない。

もちろんリストアにも多彩なオプションがあるのでマニュアル参照。

http://jp.docs.mongodb.org/manual/reference/program/mongorestore/

以上!

enjoy!

  • このエントリーをはてなブックマークに追加
  • Pocket

SNSでもご購読できます。

コメントを残す

*