個々のデータベースとテーブルの復元機能は、ApsaraDB RDS for PostgreSQL インスタンスでサポートされています。この機能を使用すると、特定のデータベースをバックアップセットまたは特定の時点まで、元の ApsaraDB RDS for PostgreSQL インスタンスまたは既存の ApsaraDB RDS for PostgreSQL インスタンスに復元できます。この機能は、誤った操作が行われ、データを迅速に復元する必要がある場合や、履歴データを分析する必要がある場合に使用できます。
機能の説明
項目 | 説明 |
復元範囲 | RDS インスタンス上の特定のデータベース。 説明 復元範囲は、データバックアップの保持期間、ログバックアップの保持期間、および RDS インスタンスの個々のデータベースとテーブルの高速復元機能を有効にした時点によって異なります。データバックアップファイルとログバックアップファイルの両方で、最大保持期間は 730 日です。詳細については、「ApsaraDB RDS for PostgreSQL インスタンスをバックアップする」をご参照ください。DescribeLocalAvailableRecoveryTime オペレーションを呼び出して、RDS インスタンスを復元できる時間範囲をクエリできます。 |
復元速度 | 復元速度はデータベースのデータ量によって異なり、約 20 Mbit/s です。 |
復元方法 | バックアップファイルから、または特定の時点までデータを復元できます。 説明
|
前提条件
RDS インスタンスが次の要件を満たしていること。
RDS インスタンスは、PostgreSQL 10、PostgreSQL 11、PostgreSQL 12、PostgreSQL 13、PostgreSQL 14、または PostgreSQL 15 を実行している。サーバーレス RDS インスタンスはサポートされていません。
RDS インスタンスは、RDS Basic Edition または RDS High-availability Edition を実行している。
RDS インスタンスは、拡張 SSD(ESSD)ストレージタイプを使用している。
RDS インスタンスが 2022 年 10 月 10 日より前に作成され、元のアーキテクチャを使用している場合は、SLR 認証を実行し、マイナーエンジンバージョンを最新バージョンに更新してから、RDS インスタンスの個々のデータベースとテーブルを復元する必要があります。詳細については、「[お知らせ] 2022 年 10 月 10 日から ApsaraDB RDS for PostgreSQL インスタンスを作成するには SLR 認証が必要です」および「マイナーエンジンバージョンを更新する」をご参照ください。
個々のデータベースとテーブルの復元機能が有効になっていること。詳細については、「個々のデータベースとテーブルの復元機能を有効にする」をご参照ください。
RDS インスタンスの 基本情報 ページに移動して、上記の情報を取得できます。
課金ルール
個々のデータベースとテーブルの復元機能はパブリックプレビュー中です。この機能は無料で使用できます。
制限事項
個々のデータベースとテーブルの復元機能を使用して、RDS インスタンスの個々のデータベースまたはテーブルを新しい RDS インスタンスに復元することはできません。
個々のデータベースとテーブルの高速復元機能を使用して、テーブルではなくデータベースを復元できます。
個々のデータベースとテーブルの復元機能を使用して、ビューを復元することはできません。
100 GB を超えるテーブルは復元できません。
名前が
postgres
、rdsadmin
、template
で始まるデータベースは復元できません。
個々のデータベースとテーブルの復元機能を有効にする
個々のデータベースとテーブルの復元機能を使用してデータを復元するには、データを復元する前に、次の手順を実行して機能を有効にする必要があります。詳細については、「手順」をご参照ください。この機能を有効にしても、ワークロードには影響しません。
[インスタンス] ページに移動します。上部のナビゲーションバーで、RDS インスタンスが存在するリージョンを選択します。次に、RDS インスタンスを見つけて、インスタンスの ID をクリックします。
表示されるページの左側のナビゲーションウィンドウで、バックアップと復元 をクリックします。
表示されるページで、バックアップポリシー タブをクリックします。バックアップと復元
バックアップポリシー セクションで、[編集] をクリックします。表示されるダイアログボックスで、[個々のデータベース/テーブルの復元] をオンにします。
[保存] をクリックします。
手順
[インスタンス] ページに移動します。上部のナビゲーションバーで、RDS インスタンスが存在するリージョンを選択します。次に、RDS インスタンスを見つけて、インスタンスの ID をクリックします。
表示されるページの左側のナビゲーションウィンドウで、バックアップと復元 をクリックします。表示されるページで、[個々のデータベース/テーブルの復元] をクリックします。
説明[個々のデータベース/テーブルの復元] ボタンが ApsaraDB RDS コンソールに表示されない場合は、前提条件 に記載されている要件が満たされているかどうかを確認してください。
次のパラメータを設定します。
パラメータ
説明
[復元先]
データを復元する宛先 RDS インスタンス。
元の RDS インスタンス
同じリージョンに存在し、同じメジャーエンジンバージョンを持つ別の RDS インスタンス
[復元速度]
このパラメータの値は標準として固定されています。
[復元方法]
[バックアップセット別]: このオプションを選択すると、バックアップセットからデータを復元できます。
[時間別]: [時間別] オプションは、RDS インスタンスでログバックアップ機能が有効になっている場合にのみ表示されます。システムは完全バックアップデータを復元し、次に増分ログバックアップデータを復元します。ログバックアップの保持期間内の特定の時点を選択できます。ログバックアップ機能を有効にするか、ログバックアップの保持期間を変更する場合は、「ApsaraDB RDS for PostgreSQL インスタンスをバックアップする」に記載されている手順に従ってください。
たとえば、RDS インスタンスのデータバックアップの保持期間とログバックアップの保持期間が 7 日の場合、過去 7 日以内に生成されたデータを復元できます。7 日前に生成されたバックアップセットは保持されず、復元には使用できません。
復元するデータベースを選択し、[OK] をクリックします。ビジネス要件に基づいて、復元されたデータベースの名前を指定できます。
説明一度に最大 50 個のデータベースを選択できます。
復元されたデータベースの名前は、元のデータベースの名前と同じにすることはできません。システムは、復元されたデータベースの名前の末尾に _backup を自動的に追加します。データベース名を変更することもできます。
宛先インスタンスの使用可能なストレージが、選択したデータベースの合計ストレージよりも大きいことを確認してください。
データベースが復元されたら、宛先インスタンスの データベース管理 ページに移動して、復元されたデータベースを表示できます。
よくある質問
ApsaraDB RDS コンソールで RDS インスタンスのデータベースまたはテーブルを復元するときに、「操作に失敗しました。RDS インスタンスは準備完了状態ではありません。」というエラーメッセージが表示された場合はどうすればよいですか?
ApsaraDB RDS コンソールのタスクは順番に実行されます。進行中の復元タスクまたは未完了のタスクが存在する場合、別の復元タスクを実行するとエラーメッセージが表示されます。この場合は、進行中の復元タスクまたは未完了のタスクが完了するまで待ってから、別の復元タスクを実行してください。
復元されたテーブルが空の場合はどうすればよいですか?
復元に選択した時点で元のテーブルにデータが含まれているかどうかを確認します。復元に選択した時点で元のテーブルにデータが含まれていない場合は、テーブルにデータが含まれている時点を選択する必要があります。
RDS インスタンスの個々のデータベースとテーブルを復元するために使用できる他の方法はありますか?
Database Backup (DBS) を使用して、RDS インスタンスと Elastic Compute Service (ECS) インスタンスにある自己管理データベースをバックアップおよび復元できます。また、Data Disaster Recovery を使用して、クラウドからコンピュータにバックアップセットをダウンロードすることもできます。詳細については、「概要」をご参照ください。その他のデータ復元方法の詳細については、「データベースまたはテーブル別にデータを復元する」をご参照ください。
関連操作
RDS インスタンスのすべてのデータを復元できます。詳細については、「ApsaraDB RDS for PostgreSQL インスタンスのデータを復元する」をご参照ください。
pg_restore を使用して、論理バックアップファイルから特定の個々のテーブルを復元することもできます。詳細については、「pg_restore を使用して論理バックアップファイルからデータを復元する」をご参照ください。
RDS インスタンスのバックアップデータを自己管理 PostgreSQL インスタンスに復元できます。詳細については、「CSV ファイルまたは SQL ファイルを使用して ApsaraDB RDS for PostgreSQL インスタンスのデータを自己管理 PostgreSQL インスタンスに復元する」をご参照ください。
API オペレーションを呼び出して、関連操作を実行できます。詳細については、「DescribeLocalAvailableRecoveryTime」をご参照ください。