ApsaraDB RDS for PostgreSQL は、個別のデータベースの復元をサポートしています。バックアップセットから、または特定のポイントインタイムに、指定したデータベースをソースインスタンスまたは別の既存インスタンスに復元できます。この機能は、操作ミスを迅速に修正したり、履歴データを分析したりするのに最適です。
機能
|
項目 |
説明 |
|
復元範囲 |
インスタンス内の指定されたデータベース。 説明
復元可能な時間範囲は、データバックアップとログバックアップの保持期間、および個別のデータベースの復元機能を有効にしたタイミングによって異なります。データバックアップとログバックアップの最大保持期間は 730 日です。RDS インスタンスで復元可能な時間範囲をクエリするには、DescribeLocalAvailableRecoveryTime API を呼び出します。 |
|
復元速度 |
約 20 MB/s です。実際の速度はデータ量によって異なります。 |
|
復元方法 |
バックアップセットから、または特定のポイントインタイムにデータを復元できます。 説明
|
前提条件
-
ApsaraDB RDS for PostgreSQL インスタンスは、次の要件を満たす必要があります。
-
メジャーエンジンバージョン:10~17
-
エディション:RDS Basic Edition、RDS High-availability Edition、または RDS Cluster Edition
-
ストレージタイプ:ESSD または high-performance cloud disk
-
課金タイプ:従量課金またはサブスクリプション (Serverless インスタンスはサポートされていません。)
説明インスタンスの基本情報ページでこの情報を表示できます。
-
-
インスタンスが 2022 年 10 月 10 日より前に作成された (旧アーキテクチャのインスタンスである) 場合、個別のデータベースを復元するには、サービスリンクロール (SLR) の認可を完了し、マイナーエンジンバージョンを更新して最新バージョンにする必要があります。
-
個別のデータベースの復元機能が有効になっていること。詳細については、「個別のデータベースの復元機能の有効化」をご参照ください。
課金
この機能はパブリックプレビュー段階であり、無料でご利用いただけます。
制限事項
-
新しいインスタンスにデータを復元することはできません。
-
指定したデータベースのみ復元できます。指定したテーブルは復元できません。
-
ビューは復元できません。
-
名前が
postgres、rdsadmin、またはtemplateで始まるデータベースは復元できません。
個別のデータベースの復元機能の有効化
この機能を使用して個別のデータベースを復元する前に、まずこのセクションの手順に従って機能を有効にする必要があります。この機能を有効にしても、サービスには影響しません。
- RDSインスタンスにアクセスし、上部のリージョンを選択し、対象のRDSインスタンスのIDをクリックします。
-
左側のナビゲーションペインで、バックアップと復元をクリックします。
-
バックアップと復元 ページで、バックアップポリシー タブをクリックします。
-
バックアップの設定 の横にある 編集 をクリックし、データベースとテーブルの復元 を有効にします。
-
保存 をクリックします。
手順
- RDSインスタンスにアクセスし、上部のリージョンを選択し、対象のRDSインスタンスのIDをクリックします。
-
左側のナビゲーションペインで、バックアップと復元 をクリックし、次に データベースとテーブルの復元 をクリックします。
説明コンソールでデータベースとテーブルの復元 ボタンが表示されていない場合は、すべての前提条件が満たされていることを確認してください。
-
復元先と復元方法を設定します。
パラメーター
説明
[復元先]
データは以下に復元できます:
-
ソースインスタンス
-
同じリージョンにあり、メジャーエンジンバージョンが同じである別のインスタンス
[復元速度]
標準。この値は固定されており、変更できません。
[復元方法]
-
[バックアップ ID]
-
[日時別]: 日時別 オプションは、インスタンスでログバックアップが有効になっている場合にのみ表示されます。システムはまず完全バックアップデータを復元し、次に増分ログバックアップデータを復元します。ログバックアップの保持期間内の任意の時点を選択できます。ログバックアップを有効にする、またはログバックアップの保持期間を変更するには、「自動バックアップの設定」をご参照ください。
たとえば、データバックアップとログバックアップの両方の保持期間が 7 日間の場合、過去 7 日以内の任意のポイントインタイムからデータを復元できます。7 日以上経過したバックアップセットは自動的に削除されるため、復元には使用できません。
-
-
復元するデータベースを選択し、必要に応じて復元後のデータベースに新しい名前を指定し、OK をクリックします。
説明-
一度に最大 50 個のデータベースを選択できます。
-
復元後のデータベース名は、ソースデータベース名と同じにすることはできません。デフォルトでは、システムは復元後の各データベース名に
_backupを付加します。これらの名前は変更することもできます。 -
ページ下部に表示される選択したデータベースの合計サイズを確認し、復元先インスタンスに十分なストレージ容量があることを確認してください。
-
-
データベースの復元後、移行先インスタンスのデータベース管理 ページでそれらを表示できます。
よくある質問
-
Q: ApsaraDB RDS コンソールでデータベースを復元しようとすると、「Operation failed. This operation is not supported for the current instance status.」というエラーメッセージが表示されます。このエラーの原因と解決方法を教えてください。
A: ApsaraDB RDS コンソールでのタスクは順次実行されます。このエラーは、別の復元タスクまたは他のタスクが進行中に新しい復元タスクを開始しようとした場合に発生します。現在のタスクが完了するのを待ってから、次のタスクを開始してください。
-
Q: データベースを復元したのに、空の状態で表示される場合はどうすればよいですか。
A: 復元のために選択したポイントインタイムで、データベースが空だった可能性があります。選択した時間にデータベースにデータが含まれていたことを確認し、必要に応じて別のポイントインタイムを使用して再度復元を試してください。
-
Q: ApsaraDB RDS インスタンスの個別のデータベースを復元する他の方法はありますか。
A: Database Backup Service (DBS) を使用することもできます。DBS は、ECS インスタンス上のクラウドデータベースやセルフマネージドデータベースをバックアップおよび復元できます。また、DBS ではバックアップセットをローカルマシンにダウンロードすることもできます。個別のデータベースを復元する他の方法については、「データベースレベルの復元」をご参照ください。
関連操作
-
すべてのデータを復元するには、「ApsaraDB RDS for PostgreSQL インスタンスのデータを復元する」をご参照ください。
-
論理バックアップから特定のテーブルを復元するには、「pg_restore を使用して論理バックアップファイルからデータを復元する」をご参照ください。
-
ApsaraDB RDS for PostgreSQL インスタンスのバックアップデータをセルフマネージド PostgreSQL データベースに復元するには、「ApsaraDB RDS for PostgreSQL インスタンスの CSV または SQL ファイルからセルフマネージドデータベースにデータを復元する」をご参照ください。
-
API を使用して関連操作を実行することもできます。詳細については、「DescribeLocalAvailableRecoveryTime」をご参照ください。