次の方法で共有


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

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

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

前提条件

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

  • 元のサーバーをホストしている Azure サブスクリプションの名前
  • サーバーが作成された場所
  • 2024-08-01 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-version 2024-08-01 を使用します。

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

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

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

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

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

    重要

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

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

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

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

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

削除された Virtual Network 対応サーバーを復元するには、委任されたサブネット リソース ID やプライベート DNS ゾーンの Azure Resource Manager リソース ID などの追加のネットワーク プロパティを指定する必要があります。 次の手順に従って、必要なネットワーク構成でサーバーを復元します。

{
  "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 バージョンを使用すると、復元の失敗やタイムアウトが発生する可能性があります。 このような問題を回避するには、2024-08-01 API を使用します。
  2. 一部の復元操作は同じ名前では失敗する可能性があるため、潜在的な DNS エラーを回避するには、復元プロセスを開始するときに別の名前を使用することをお勧めします。

Azure Database for PostgreSQL 製品チームと提案やバグを共有します