sql >> データベース >  >> NoSQL >> MongoDB

MongoDB-バックアップを作成する

    MongoDBでバックアップを作成するには、ファイルを直接コピーするか、いくつかのバックアップ/管理ツールのいずれかを使用します。

    MongoDBデータベースをバックアップする方法はいくつかあります。

    • データファイルをコピーする
    • mongodumpを使用する
    • MongoDBCloudManagerを使用する
    • OpsManagerを使用する

    データファイルをコピーする

    MongoDBがデータの保存に使用する基になるデータファイルをコピーできます。これらはデータディレクトリにあります。

    データディレクトリのデフォルトの場所は /data / db です。 ただし、別の場所を使用する場合は、代わりにその場所を使用する必要があります。

    完全バックアップを行うには、ディレクトリ全体をコピーする必要があります。

    ボリュームがスナップショットをサポートしている場合は、スナップショットを使用することもできます。たとえば、Linuxでは、LVM(Logical Volume Manager)を使用してスナップショットを作成し、そのスナップショットからバックアップサイト/リモートの場所にコピーできます。

    mongodumpを使用する

    mongodumpを使用できます データとmongorestoreをバックアップします 復元します。

    実行中のサーバーのすべての内容をすばやくバックアップするには、新しいターミナル/コマンドプロンプトを開き、 / dump が必要なディレクトリに移動します。 作成するフォルダを入力し、次のように入力します。

    mongodump

    MongoDB binディレクトリがPATHにない場合は、フルパスを指定する必要があります。

    mongodump を実行できない場合 、 mongo を終了したことを確認してください ユーティリティ、または mongodump を実行する前に新しいターミナル/コマンドプロンプトウィンドウを開きました 、別のユーティリティであるため。

    結果のメッセージ:

    2016-07-12T15:44:34.467+0700	writing music.artists to 
    2016-07-12T15:44:34.467+0700	writing music.musicians to 
    2016-07-12T15:44:34.467+0700	writing music.catalog to 
    2016-07-12T15:44:34.468+0700	done dumping music.artists (13 documents)
    2016-07-12T15:44:34.469+0700	done dumping music.musicians (10 documents)
    2016-07-12T15:44:34.469+0700	done dumping music.catalog (10 documents)
    2016-07-12T15:44:34.470+0700	writing music.producers to 
    2016-07-12T15:44:34.470+0700	writing music.jazz to 
    2016-07-12T15:44:34.470+0700	done dumping music.producers (5 documents)
    2016-07-12T15:44:34.470+0700	done dumping music.jazz (1 document)
    2016-07-12T15:44:34.534+0700	writing test.restaurants to 
    2016-07-12T15:44:34.705+0700	done dumping test.restaurants (25359 documents)
    

    MacのFinderでの表示は次のとおりです。

    ご覧のとおり、 dump というフォルダが作成されています。 次に、各データベースのフォルダーを作成し、すべてのコレクションとそのメタデータをそれぞれのデータベースフォルダーにダンプします。 music を拡張しました そのディレクトリ内のファイルを表示するデータベースフォルダ。

    mongodumpに注意してください 出力ファイルがバックアップデータフォルダに存在する場合は上書きするため、mongodumpを実行する前に、保持する必要のあるファイルを移動または名前変更してください。 もう一度。

    単一のデータベースをバックアップする

    --dbでデータベースの名前を指定することにより、単一のデータベースをバックアップできます。 パラメータ:

    mongodump --db=music

    単一のコレクションをバックアップする

    --collectionでコレクションの名前を指定することにより、単一のコレクションをバックアップできます。 パラメータ:

    mongodump --db=music --collection=artists

    バックアップ場所を指定する

    --outを使用します バックアップを書き込むディレクトリを指定するパラメータ:

    mongodump --db music --out /data/backups

    その他のオプション

    mongodump データのバックアップ方法を指定するためのオプションがさらにたくさんあります。 mongodump --helpはいつでも実行できます 利用可能なオプションを確認します。

    mongodumpの復元 バックアップ

    mongodumpを復元できます mongorestoreを実行してバックアップする 。これはmongodumpと同じように機能します 。

    mongorestore --helpを参照してください 詳細については

    mongodump およびmongorestore 主に小規模な展開、およびクエリに基づく部分的なバックアップと復元、本番環境からステージング環境または開発環境への同期、またはスタンドアロンのストレージエンジンの変更を目的としています。

    大規模なシステム、シャードクラスター、またはレプリカセットの場合は、MongoDBCloudManagerやOpsManagerなどのより堅牢なバックアップシステムを使用します。

    MongoDB Cloud Manager

    MongoDB Cloud Managerは、MongoDBを管理するためのホスト型プラットフォームです。

    MongoDB Cloud Managerを使用すると、MongoDBデプロイメントからoplogデータを読み取ることで、MongoDBレプリカセットとシャーディングされたクラスターを継続的にバックアップできます。

    MongoDB Cloud Managerは、サブスクリプションベースで機能します。詳細はこちら。

    Ops Manager

    OpsManagerはMongoDBCloudManagerに似ていますが、ローカル環境にインストールされている(つまり、クラウドにインストールされていない)点が異なります。そのため、MongoDBデプロイメントの監視、自動化、およびバックアップに使用できます。

    OpsManagerはMongoDBサブスクライバーが利用できます。


    1. mongodbは、フィールド/キーごとの個別の値の数をカウントします

    2. redisでアクセント付きの文字列を保存および取得するにはどうすればよいですか?

    3. MongoDBで多言語テキストインデックスを作成する

    4. redis.confのmaxmemoryパラメータ