削除された Azure Database for PostgreSQL - フレキシブル サーバー インスタンスの復元

適用対象: Azure Database for PostgreSQL - フレキシブル サーバー

サーバーが削除されると、Azure Database for PostgreSQL フレキシブル サーバーのバックアップはサービス内に最大 5 日間保持されます。 データベースのバックアップは、元々サーバーをホストしている Azure サブスクリプションからのみアクセスおよび復元できます。 以下の推奨手順に従って、サーバーの削除時から 5 日以内に削除された Azure Database for PostgreSQL フレキシブル サーバー リソースを復旧できます。 推奨される手順は、サーバーのバックアップがまだ使用可能であり、システムから削除されていない場合にのみ機能します。 削除されたサーバーは多くの場合、復元できますが、他の要因に左右されるため、必ず復元できるとは限りません。

前提条件

削除された Azure Database for PostgreSQL フレキシブル サーバー インスタンスを復元するには、次が必要になります

  • 元のサーバーをホストしている Azure サブスクリプションの名前
  • サーバーが作成された場所
  • 2023-03-01-preview api-version バージョンを使用する

復元の手順

  1. Azure ポータルにアクセスします。 [監視] サービスを選択し、[動作状況ログ] を選択します。

  2. [アクティビティ ログ] で、次のように [フィルターの追加] を選択し、次のフィルターを設定します。

    • サブスクリプション = 削除されたサーバーをホストしているサブスクリプション

    • [操作] = [Delete PostgreSQL Server](PostgreSQL サーバーの削除)

      PostgreSQL サーバーの削除操作のためにフィルター処理されたアクティビティ ログを示すスクリーンショット。

  3. PostgreSQL サーバーの削除イベントを選択し、 [JSON] タブを選択します。JSON 出力の resourceId 属性と submissionTimestamp 属性をコピーします。 resourceId の形式は次のとおりです: /subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/ResourceGroup-name/providers/Microsoft.DBforPostgreSQL/flexibleServers/deletedserver

  4. Azure Database for PostgreSQL フレキシブル サーバー の [サーバー REST API の作成] ページを参照し、緑色で強調表示されている [試してみる] タブを選択します。 Azure のアカウントを使用してサインインします。

    重要

    次の手順で説明する通り、この API 機能を期待通りに有効化するには、実行する前にデフォルトではなく、この API バージョン 2023-03-01-preview を使用してください。

  5. 前の手順 3 でキャプチャした resourceId 属性の JSON 値に基づいて、resourceGroupNameserverName (ターゲット サーバー名)、subscriptionId の各プロパティを指定します。 次の図に示すように、api-version プロパティはあらかじめ設定されており、そのまま残すことができます。

    [REST API Try It](REST API 使ってみる) ページを示すスクリーンショット。

  6. 要求本文セクションに移動し、"Dropped server Location" (CentralUS、EastUS など)、"submissionTimestamp"、"resourceId" を置き換えて次のように貼り付けます。 "pointInTimeUTC" には、コマンドがエラーにならないように、"submissionTimestamp" の値に 5 分を加えた値を指定します。

    {
      "location": "Dropped Server Location",  
      "properties": 
      {
        "pointInTimeUTC": "submissionTimestamp + 05 minutes",
        "createMode": "ReviveDropped",
        "sourceServerResourceId": "resourceId"
      }
    }
    

    たとえば、送信タイムスタンプが 2023-06-15T15:58:02Z の場合、2023-06-15T16:05:02Z の時点の復元ポイントに少なくとも 5 分を追加し、復元要件に従って 3 つのパラメーター (location、pointInTimeUTC、sourceServerResourceId) を確実に変更することをお勧めします。

    {
      "location": "EastUS",  
      "properties": 
      {
        "pointInTimeUTC": "2023-06-15T16:05:02Z",
        "createMode": "ReviveDropped",
        "sourceServerResourceId": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/SourceResourceGroup-Name/providers/Microsoft.DBforPostgreSQL/flexibleServers/SourceServer-Name"
      }
    }
    

    重要

    サーバーがドロップされてから 5 日間の時間制限があります。 5 日が経過すると、バックアップ ファイルが見つからないため、エラーが発生します。

  7. 応答コード 201 または 202 が表示された場合は、復元要求が正常に送信されています。

    サーバーの作成には、元のサーバーでプロビジョニングされたデータベースのサイズとコンピューティング リソースによって時間がかかることがあります。 復元の状態は、次をフィルター処理することによって、アクティビティ ログから監視できます。

    • サブスクリプション = 自分のサブスクリプション
    • [リソースの種類] = [Azure Database for PostgreSQL のフレキシブル サーバー] (Microsoft.DBforPostgreSQL/flexibleServers)
    • 操作 = PostgreSQL Server 作成の更新

削除された VNET 対応サーバーを復元する

{
  "location": "EastUS",  
  "properties": {
    "createMode": "ReviveDropped",
    "sourceServerResourceId": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/SourceResourceGroup-Name/providers/Microsoft.DBforPostgreSQL/flexibleServers/SourceServer-Name",
    "pointInTimeUTC": "2023-06-20T20:50:59.4078005+00:00",
    "Network": {
      "DelegatedSubnetResourceId": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/SourceResourceGroup-Name/providers/Microsoft.Network/virtualNetworks/VirtualNetwork-Name/subnets/Subnet-Name",
      "PrivateDnsZoneArmResourceId": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/SourceResourceGroup-Name/providers/Microsoft.Network/privateDnsZones/privatednszonename"
    }
  }
}

一般的なエラー

  1. 間違った API バージョンを使用すると、復元の失敗やタイムアウトが発生する可能性があります。 このような問題を回避するには、2023-03-01-preview API を使用してください。
  2. 一部の復元操作は同じ名前では失敗する可能性があるため、潜在的な DNS エラーを回避するには、復元プロセスを開始するときに別の名前を使用することをお勧めします。

次のステップ

  • 5 日以内にサーバーを復元しようとしても、前述の手順に正確に従った後もエラーが発生する場合は、サポート インシデントを開いて支援を求めてください。 削除されたサーバーを 5 日後に復元しようとすると、バックアップファイルが見つからないため、エラーが発生します。 このシナリオでは、サポート チケットを開かないでください。 バックアップがシステムから削除された場合、サポート チームはサポートを提供できません。
  • サーバーが誤って削除されないように、リソース ロックを使用することを強くお勧めします。