ドロップした Azure Database for PostgreSQL サーバーを復元する
適用対象: Azure Database for PostgreSQL - 単一サーバー
重要
Azure Database for PostgreSQL - シングル サーバーは廃止パスにあります。 Azure Database for PostgreSQL - フレキシブル サーバーにアップグレードすることを強くお勧めします。 Azure Database for PostgreSQL - フレキシブル サーバーへの移行の詳細については、Azure Database for PostgreSQL 単一サーバーの現状に関するページをご覧ください。
サーバーが削除されると、データベース サーバーのバックアップをサービスで最大 5 日間保持できます。 データベースのバックアップは、元々サーバーをホストしている Azure サブスクリプションからのみアクセスおよび復元できます。 以下の推奨手順に従って、サーバーの削除時から 5 日以内に削除された PostgreSQL サーバーリソースを復旧できます。 推奨される手順は、サーバーのバックアップがまだ使用可能であり、システムから削除されていない場合にのみ機能します。
前提条件
ドロップした Azure Database for PostgreSQL サーバーを復元するには、次のことを行う必要があります。
- 元のサーバーをホストしている Azure サブスクリプションの名前
- サーバーが作成された場所
復元の手順
Azure ポータルにアクセスします。 Azure Monitor サービスを選択し、 [アクティビティ ログ] を選択します。
[アクティビティ ログ] で、次のように [フィルターの追加] を選択し、次のフィルターを設定します。
- サブスクリプション = 削除されたサーバーをホストしているサブスクリプション
- リソースの種類 = Azure Database for PostgreSQL サーバー (Microsoft.DBforPostgreSQL/servers)
- 操作 = [Delete PostgreSQL Server](PostgreSQL Server の削除) (Microsoft.DBforPostgreSQL/servers/delete)
PostgreSQL サーバーの削除イベントを選択し、 [JSON] タブを選択します。JSON 出力の
resourceId
属性とsubmissionTimestamp
属性をコピーします。 resourceId の形式は次のとおりです:/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TargetResourceGroup/providers/Microsoft.DBforPostgreSQL/servers/deletedserver
。PostgreSQL の [Create Server REST API](サーバー REST API の作成) ページを参照し、緑色で強調表示されている [試してみる] タブを選択します。 Azure のアカウントを使用してサインインします。
前の手順 3 でキャプチャした resourceId 属性の JSON 値に基づいて、resourceGroupName、serverName (削除されたサーバー名)、subscriptionId の各プロパティを指定します。 次の図に示すように、api-version プロパティはあらかじめ設定されており、そのまま残すことができます。
要求本文セクションで下にスクロールし、"Dropped server Location" (CentralUS、EastUS など)、"submissionTimestamp"、"resourceId" を置き換えて次のように貼り付けます。 "restorePointInTime" については、コマンドがエラーにならないように、"submissionTimestamp" の値から 15 分だけ引いた値を指定します。
{ "location": "Dropped Server Location", "properties": { "restorePointInTime": "submissionTimestamp - 15 minutes", "createMode": "PointInTimeRestore", "sourceServerId": "resourceId" } }
たとえば、現在の時刻が 2020-11-02T23:59:59.0000000Z の場合は、過去の復元ポイントの 15 分以上前の時刻の 2020-11-02T23:44:59.0000000Z を指定することをお勧めします。 下の例を参照して、復元の要件に合わせて 3 つのパラメーター (location、restorePointInTime、sourceServerId) を調整していることを確認します。
{ "location": "EastUS", "properties": { "restorePointInTime": "2020-11-02T23:44:59.0000000Z", "createMode": "PointInTimeRestore", "sourceServerId": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/SourceResourceGroup/providers/Microsoft.DBforPostgreSQL/servers/sourceserver" } }
重要
サーバーがドロップされてから 5 日間の時間制限があります。 5 日が経過すると、バックアップ ファイルが見つからないため、エラーが発生します。
応答コード 201 または 202 が表示された場合は、復元要求が正常に送信されています。
サーバーの作成には、元のサーバーでプロビジョニングされたデータベースのサイズとコンピューティング リソースによって時間がかかることがあります。 復元の状態は、次をフィルター処理することによって、アクティビティ ログから監視できます。
- サブスクリプション = 自分のサブスクリプション
- リソースの種類 = Azure Database for PostgreSQL サーバー (Microsoft.DBforPostgreSQL/servers)
- 操作 = PostgreSQL Server 作成の更新
次のステップ
- 5 日以内にサーバーを復元しようとしても、前述の手順に正確に従った後もエラーが発生する場合は、サポート インシデントを開いて支援を求めてください。 削除されたサーバーを 5 日後に復元しようとすると、バックアップファイルが見つからないため、エラーが発生します。 このシナリオでは、サポート チケットを開かないでください。 バックアップがシステムから削除された場合、サポート チームはサポートを提供できません。
- サーバーが誤って削除されないように、リソース ロックを使用することを強くお勧めします。