次の方法で共有


削除された 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. アクティビティ ログで、次のように [フィルターの追加] を選択し、次のフィルターを設定します。

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

  • Operation = PostgreSQL サーバーを削除 (Microsoft.DBforPostgreSQL/flexibleservers/delete)

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

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

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

Important

次の手順で詳しく説明するように、この API 関数を有効にするには、実行する前に既定ではなく、この API バージョン 2024-08-01 を使用します。

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

  2. [Request Body]\(要求本文\) セクションに移動し、"Dropped server Location"(CentralUS、EastUS など)、"submissionTimestamp"、"resourceId" を置き換えて、次のように貼り付けます。 "pointInTimeUTC" には、値 "submissionTimestamp" を指定します。

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

復元の要件に従って、3 つのパラメーター (location,pointInTimeUTC,sourceServerResourceId) を変更していることを確認します。

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

Important

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

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

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

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

削除された仮想ネットワークが有効なサーバーを復元する

削除された仮想ネットワークが有効なサーバーを復元するには、委任されたサブネット リソース 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 エラーの可能性を回避するには、復元プロセスを開始するときに別の名前を使用することをお勧めします。一部の復元操作は同じ名前で失敗する可能性があるためです。