Docs Menu
Docs Home
/
MongoDB Atlas
/ /

クエリ可能なレガシーバックアップからのデータベースの復元

項目一覧

  • 前提条件
  • 手順

重要

レガシーバックアップの廃止

2020 年 3 月 23 日以降、すべての新しいクラスターが使用できるのはクラウドバックアップのみです

5.0 にアップグレードすると、バックアップ システムがレガシーバックアップに設定されている場合、クラウドバックアップにアップグレードされます。このアップグレード後:

  • 既存のレガシーバックアップのスナップショットはすべて引き続き利用できますが、 保持ポリシー に従い、時間の経過とともに期限が切れます。

  • バックアップ ポリシーデフォルト スケジュールにリセットされます。レガシーバックアップでカスタム バックアップ ポリシーを設定していた場合は、 クラウドバックアップに関するドキュメントに記載されている手順に従ってポリシーを再作成する必要があります。

Atlas は、レガシーバックアップスナップショットをクエリすることでのデータベースの復元をサポートしています。

クエリ可能なバックアップのスナップショットを使用して、データベースのデータをエクスポートし、ターゲットの配置に復元できます。 次の手順では、Atlas が提供するトンネルを介してクエリ可能なバックアップのインスタンスに接続します。

重要

同じデータベースに復元する 場合は、復元中にのみクライアント操作を停止する必要があります。

復元中に、ターゲット Atlas クラスターがクライアント リクエストを受信しないことを確認する必要があります。 次のユースケースが適用されます。

  • 同じデータベースに復元する場合は、復元中にクライアントの操作を停止する必要があります。

  • 別のデータベースに復元する場合、クライアント アプリケーションを停止する必要はありません。 この場合は、新しい Atlas クラスターに復元し、新しい配置が実行されたら、その新しいクラスターを使用するようにアプリケーションを再構成します。

1
  1. まだ表示されていない場合は、目的のプロジェクトを含む組織をナビゲーション バーの Organizations メニューで選択します。

  2. まだ表示されていない場合は、ナビゲーション バーの Project メニューから目的のプロジェクトを選択します。

  3. サイドバーの Legacy Backup をクリックします。

2

Legacy BackupページのOverviewタブには、プロジェクト内のクラスタが一覧表示されます。

  • クラスターのバックアップが有効になっている場合、 StatusActiveです。

  • クラスターのバックアップが無効になっている場合、 StatusInactiveです。

クエリするバックアップの配置で、 Options列の省略記号をクリックし、 Queryを選択します。

また、 View All Snapshotsをクリックしてそのスナップショットを表示し、目的のスナップショットでActions列の下のQueryをクリックすることもできます。

3
  1. クエリするスナップショットを選択し、[Next] をクリックします。

  2. Start スナップショットをクエリするプロセス。 Atlas のパスワードの入力を求められます。

  3. クエリ可能なスナップショットへの接続方法としてBackup Tunnelを選択します。

  4. Platform ] を選択します。

  5. [Download Backup Tunnel] をクリックします。

  6. ダウンロードしたファイルを解凍します。

  7. ターミナルまたはコマンド プロンプトを開き、解凍された <tunnel> ディレクトリに移動します。実行可能ファイルを実行してトンネルを開始します。

    トンネルのデフォルト ポートは27017です。 ポートを変更するには、次の例のように--localフラグを使用します。

    ./<tunnel executable> --local localhost:27020

    注意

    ポートを変更する場合は、接続時にポート情報を含める必要があります。

4
データベースからデータをエクスポートするには、次の手順に従います。

トンネルに接続するには、次の mongodumpオプションを含めます。

  • --port トンネルのポートに設定します。

  • --db エクスポートするデータベースの名前に設定します。

  • --out 空のディレクトリに設定して、データ ダンプを出力します。

    重要

    mongodumpを実行しているユーザーが指定されたディレクトリに書込みできるようにします。

mongodump --port <port for tunnel> --db <single-database> --out <data-dump-path>

たとえば、ポート27020で動作しているトンネルに接続して、 testデータベースから/mydata/restoredata/ディレクトリにデータをダンプするには、次の手順に従います。

mongodump --port 27020 --db test --out /mydata/restoredata/

mongodumptestデータベースファイルを/mydata/restoredata/test/ディレクトリに出力します。

mongodump$PATHにない場合は、コマンドを実行するときにツールのパスを指定します。

5
単独のデータベースを復元するには:

次のmongorestoreオプションを含めます。

注意

Atlas クラスターに復元するには、--uri オプションを使用して DNS シードリスト接続文字列に接続することを推奨します。

  • --uri 宛先クラスターの接続文字列に設定します。

  • --db 宛先データベースの名前に設定します。

注意

パスワードに特殊文字が含まれている場合は、パーセント エンコードする必要があります。

オプションとして、データベースがすでに存在する場合は、宛先クラスター内のデータベースを削除するために--dropオプションを含めることができます。

mongorestore --uri "mongodb://username:password@mongodb0.example.com:<Port>,mongodb1.example.com:<Port1>,mongodb2.example.com:<Port2>" --ssl --db <destination database> <data-dump-path/database> --drop
mongorestore --uri "mongodb+srv://username:password@cluster0.example.mongodb.net" --db <destination database> <data-dump-path/database> --drop

注意

Ubuntu 18.04でmongodumpまたはmongorestoreを使用している場合、 SRV 接続文字列mongodb+srv://形式)を--uriオプションとともに使用すると、 cannot unmarshal DNSエラー メッセージが表示されることがあります。 その場合は、次のいずれかのオプションを代わりに使用します。

  • 非 SRV 接続stringmongodb:// 形式)と --uri オプション

  • 直接接続するホストを指定するための--hostオプション

たとえば、/mydata/restoredata/test ディレクトリから新しいデータベース restoredTest に復元するには、次のように行います。

mongorestore --uri "mongodb://username:password@00.foo.mongodb.net:27017,01.foo.mongodb.net:27017,02.foo.mongodb.net:27017" --ssl --db restoredTest /mydata/restoredata/test --drop

この例では、宛先レプリカセットのプライマリまたは宛先シャーディングされたクラスターのmongosがポート27017でリッスンすることを前提としています。

mongorestore --uri "mongodb+srv://username:password@cluster0.example.mongodb.net" --db restoredTest /mydata/restoredata/test --drop
6

終了したら、クエリ可能なインスタンスを終了できます。

  1. 左側のナビゲーション ペインで [ Legacy Backup Restores & Downloadsをクリックし、[] タブをクリックします。

  2. ターゲット配置アイテムのStatus列にカーソルを合わせ、 Cancelをクリックします。

  3. [Cancel Restore Job] をクリックします。

7

アプリケーションを再起動し、新しいターゲット クラスターが使用されていることを確認します。

戻る

スナップショットのクエリ

項目一覧