還原執行個體

本頁面說明如何從備份還原執行個體。

如需還原作業的相關資訊、最佳做法和相關規定,請參閱「還原執行個體總覽」。

從隨選或自動備份還原

您可以在下列情況下使用隨選或自動備份:

  • 還原至同一專案中的其他執行個體
  • 還原至備份所在的相同執行個體
  • 還原至其他專案或區域中的不同執行個體

如果您已啟用時間點復原 (PITR),則可根據執行個體的記錄保留設定,將執行個體復原至特定時間點。

還原至其他執行個體

從備份還原資料至不同的執行個體時,目標執行個體中的資料會更新為當初建立備份時的來源執行個體狀態。詳情請參閱有關執行還原的一般提示還原至不同執行個體的提示與需求

如果您需要專案的備份清單,但因服務中斷而無法在執行個體總覽頁面中查看,可以使用 backupRuns.list API 搭配萬用字元 (-)。萬用字元選項會擷取專案中所有執行個體的所有備份清單。詳情請參閱「在服務中斷期間查看備份資料」。

控制台

  1. 前往 Google Cloud 控制台的「Cloud SQL 執行個體」頁面。

    前往 Cloud SQL 執行個體

  2. 如果目標執行個體有任何唯讀備用資源,請使用更多動作選單 更多動作圖示。 刪除這些項目。
  3. 如要開啟執行個體的「總覽」頁面,請按一下執行個體名稱。
  4. 在 SQL 導覽選單中,選取「Backups」(備份)
  5. 找出要用來還原的備份,然後按一下「還原」
  6. 在「Restore an instance from a backup」頁面中,確認您在「Review backup details」中選取了正確的備份。
  7. 在「Choose restore destination」(選擇還原目的地) 中,選取「Overwrite an existing instance」(覆寫現有執行個體)
  8. 在「要覆寫的執行個體」選單中,選取要用於還原作業的執行個體。所選執行個體及其所有資料都會遭到覆寫。
  9. 如要確認所選項目,請在「Destination instance ID」欄位中輸入要覆寫的執行個體名稱。
  10. 如要開始還原程序,請按一下「還原」
  11. 如要查看還原作業的狀態,請前往執行個體的「Operations」頁面。
  12. 還原作業完成後,請重建您在此程序中刪除的所有副本。

gcloud

  1. 如要判斷目標執行個體是否有任何唯讀備用資源,請使用 gcloud sql instances describe 指令:
    gcloud sql instances describe TARGET_INSTANCE_NAME

    請注意 replicaNames 欄中列出的所有例項。

  2. 如要刪除所有複本,請使用 gcloud sql instances delete 指令:
    gcloud sql instances delete REPLICA_NAME

    以相同的步驟刪除所有備用資源。

  3. 如要列出來源執行個體的備份,請使用 gcloud sql backups list 指令:
    gcloud sql backups list \
    --instance SOURCE_INSTANCE_NAME
  4. 找出要使用的備份,並記錄其 ID 值。
  5. 如要從備份還原目標執行個體,請使用 gcloud sql backups restore 指令:
    gcloud sql backups restore BACKUP_ID \
    --restore-instance=TARGET_INSTANCE_NAME \
    --backup-instance=SOURCE_INSTANCE_NAME
  6. 還原作業完成後,請重建您在此程序中刪除的所有副本。

REST v1

  1. 如要判斷執行個體是否有任何唯讀備用資源,並取得這些備用資源的 ID,請列出目標執行個體的所有備用資源。

    使用任何要求資料之前,請先替換以下項目:

    • PROJECT_ID:專案 ID
    • INSTANCE_ID:執行個體 ID

    HTTP 方法和網址:

    GET https://sqladmin.googleapis.com/v1/projects/PROJECT_ID/instances/INSTANCE_ID?fields=replicaNames

    如要傳送要求,請展開以下其中一個選項:

    您應該會收到如下的 JSON 回應:

  2. 刪除所有複本。

    使用任何要求資料之前,請先替換以下項目:

    • PROJECT_ID:專案 ID
    • REPLICA_ID:備用資源 ID

    HTTP 方法和網址:

    DELETE https://sqladmin.googleapis.com/v1/projects/PROJECT_ID/instances/REPLICA_ID

    如要傳送要求,請展開以下其中一個選項:

    您應該會收到如下的 JSON 回應:

    針對每個複本重複上述步驟。

  3. 如要取得要使用的備份 ID,請列出來源執行個體的備份。

    使用任何要求資料之前,請先替換以下項目:

    • project-id:專案 ID
    • instance-id:執行個體 ID

    HTTP 方法和網址:

    GET https://sqladmin.googleapis.com/v1/projects/project-id/instances/instance-id/backupRuns

    如要傳送要求,請展開以下其中一個選項:

    您應該會收到如下的 JSON 回應:

    -或-

    如果執行個體位於發生中斷的地區,請列出專案中的所有備份

    使用任何要求資料之前,請先替換以下項目:

    • PROJECT_ID:專案 ID
    • INSTANCE_ID:例項 ID,或 - (專案中的所有備份清單)

    HTTP 方法和網址:

    GET https://sqladmin.googleapis.com/v1/projects/PROJECT_ID/instances/-/backupRuns

    如要傳送要求,請展開以下其中一個選項:

    您應該會收到如下的 JSON 回應:

  4. 從備份還原目標執行個體。

    使用任何要求資料之前,請先替換以下項目:

    • project-id:專案 ID
    • target-instance-id:目標執行個體 ID
    • source-instance-id:來源例項 ID
    • backup-id 備份 ID

    HTTP 方法和網址:

    POST https://sqladmin.googleapis.com/v1/projects/project-id/instances/target-instance-id/restoreBackup

    JSON 要求主體:

    {
      "restoreBackupContext":
      {
        "backupRunId": backup-id,
        "instanceId": "source-instance-id"
      }
    }
    

    如要傳送要求,請展開以下其中一個選項:

    您應該會收到如下的 JSON 回應:

  5. 還原作業完成後,請重建您在此程序中刪除的所有副本。

REST v1beta4

  1. 如要判斷執行個體是否有任何唯讀備用資源,並取得這些備用資源的 ID,請列出目標執行個體的所有備用資源。

    使用任何要求資料之前,請先替換以下項目:

    • PROJECT_ID:專案 ID
    • INSTANCE_ID:執行個體 ID

    HTTP 方法和網址:

    GET https://sqladmin.googleapis.com/sql/v1beta4/projects/PROJECT_ID/instances/INSTANCE_ID?fields=replicaNames

    如要傳送要求,請展開以下其中一個選項:

    您應該會收到如下的 JSON 回應:

  2. 刪除所有複本。

    使用任何要求資料之前,請先替換以下項目:

    • PROJECT_ID:專案 ID
    • REPLICA_ID:備用資源 ID

    HTTP 方法和網址:

    DELETE https://sqladmin.googleapis.com/sql/v1beta4/projects/PROJECT_ID/instances/REPLICA_ID

    如要傳送要求,請展開以下其中一個選項:

    您應該會收到如下的 JSON 回應:

    針對每個複本重複上述步驟。

  3. 如要取得您要使用的備份 ID,請列出來源執行個體的備份。

    使用任何要求資料之前,請先替換以下項目:

    • project-id:專案 ID
    • instance-id:執行個體 ID

    HTTP 方法和網址:

    GET https://sqladmin.googleapis.com/sql/v1beta4/projects/project-id/instances/instance-id/backupRuns

    如要傳送要求,請展開以下其中一個選項:

    您應該會收到如下的 JSON 回應:

  4. 從備份還原目標執行個體。

    使用任何要求資料之前,請先替換以下項目:

    • project-id:專案 ID
    • target-instance-id:目標執行個體 ID
    • source-instance-id:來源例項 ID
    • backup-id 備份 ID

    HTTP 方法和網址:

    POST https://sqladmin.googleapis.com/sql/v1beta4/projects/project-id/instances/target-instance-id/restoreBackup

    JSON 要求主體:

    {
      "restoreBackupContext":
      {
        "backupRunId": backup-id,
        "instanceId": "source-instance-id"
      }
    }
    

    如要傳送要求,請展開以下其中一個選項:

    您應該會收到如下的 JSON 回應:

  5. 還原作業完成後,請重新建立您在此程序中刪除的所有副本。

還原至相同執行個體

從備份還原至相同執行個體時,該執行個體的資料也會回到當初建立備份時的狀態。如需瞭解還原執行個體,請參閱執行還原的一般提示

控制台

  1. 前往 Google Cloud 控制台的「Cloud SQL 執行個體」頁面。

    前往 Cloud SQL 執行個體

  2. 如果目標執行個體有任何唯讀備用資源,請使用更多動作選單 更多動作圖示。 刪除這些項目。
  3. 如要開啟執行個體的「總覽」頁面,請按一下執行個體名稱。
  4. 在 SQL 導覽選單中,選取「Backups」(備份)
  5. 找出要使用的備份,然後按一下「還原」
  6. 在「Restore an instance from a backup」頁面中,確認您在「Review backup details」中選取了正確的備份。
  7. 在「Choose restore destination」(選擇還原目的地) 中,選取「Overwrite the source instance」(覆寫來源執行個體)

    檢查來源執行個體的名稱是否已在括號中指定。

  8. 如要確認所選項目,請在「Destination instance ID」欄位中輸入執行個體名稱。
  9. 如要開始還原程序,請按一下「還原」
  10. 如要查看還原作業的狀態,請前往執行個體的「Operations」頁面。
  11. 還原作業完成後,請重建您在此程序中刪除的所有副本。

gcloud

  1. 如要判斷執行個體是否有任何唯讀備用資源,請使用 gcloud sql instances describe 指令:
    gcloud sql instances describe INSTANCE_NAME

    請注意 replicaNames 欄中列出的所有例項。

  2. 如要刪除所有複本,請使用 gcloud sql instances delete 指令:
    gcloud sql instances delete REPLICA_NAME

    以相同的步驟刪除所有備用資源。

  3. 如要列出執行個體的備份,請使用 gcloud sql backups list 指令:
    gcloud sql backups list --instance INSTANCE_NAME
  4. 找出要使用的備份,並記錄其 ID 值。
  5. 如要從指定備份還原執行個體,請使用 gcloud sql backups restore 指令:
    gcloud sql backups restore BACKUP_ID \
    --restore-instance=INSTANCE_NAME
  6. 還原作業完成後,請重新建立您在此程序中刪除的所有副本。

REST v1

  1. 如要取得要使用的備份 ID,請列出執行個體的備份。

    使用任何要求資料之前,請先替換以下項目:

    • project-id:專案 ID
    • instance-id:執行個體 ID

    HTTP 方法和網址:

    GET https://sqladmin.googleapis.com/v1/projects/project-id/instances/instance-id/backupRuns

    如要傳送要求,請展開以下其中一個選項:

    您應該會收到如下的 JSON 回應:

  2. 從指定的備份還原執行個體。

    使用任何要求資料之前,請先替換以下項目:

    • PROJECT_ID:專案 ID
    • INSTANCE_ID:執行個體 ID
    • BACKUP_ID 備份 ID

    HTTP 方法和網址:

    POST https://sqladmin.googleapis.com/v1/projects/PROJECT_ID/instances/INSTANCE_ID/restoreBackup

    JSON 要求主體:

    {
      "restoreBackupContext":
      {
        "backupRunId": "BACKUP_ID",
      }
    }
    

    如要傳送要求,請展開以下其中一個選項:

    您應該會收到如下的 JSON 回應:

  3. 還原作業完成後,請重建您在此程序中刪除的所有副本。

REST v1beta4

  1. 如要取得要使用的備份 ID,請列出執行個體的備份。

    使用任何要求資料之前,請先替換以下項目:

    • project-id:專案 ID
    • instance-id:執行個體 ID

    HTTP 方法和網址:

    GET https://sqladmin.googleapis.com/sql/v1beta4/projects/project-id/instances/instance-id/backupRuns

    如要傳送要求,請展開以下其中一個選項:

    您應該會收到如下的 JSON 回應:

  2. 從指定的備份還原執行個體。

    使用任何要求資料之前,請先替換以下項目:

    • PROJECT_ID:專案 ID
    • INSTANCE_ID:執行個體 ID
    • BACKUP_RUN_ID:Cloud SQL 從備份還原執行個體的日期和時間戳記

    HTTP 方法和網址:

    POST https://sqladmin.googleapis.com/sql/v1beta4/projects/PROJECT_ID/instances/INSTANCE_ID/restoreBackup

    JSON 要求主體:

    {
      "restoreBackupContext":
      {
        "backupRunId": "BACKUP_RUN_ID",
      }
    }
    

    如要傳送要求,請展開以下其中一個選項:

    您應該會收到如下的 JSON 回應:

  3. 還原作業完成後,請重新建立您在此程序中刪除的所有副本。

還原至其他專案中的執行個體

您可以使用 project 參數,將資料還原至備份資料所在專案以外的執行個體。使用 project 參數時,請在專案和要還原資料的執行個體中呼叫 restoreBackup。從備份還原至不同的執行個體時,目標執行個體中的資料會更新為當初建立備份時的來源執行個體狀態。

權限

將資料還原至其他專案的使用者必須具備目標專案的 cloudsql.instances.restoreBackup 權限,以及來源執行個體的 cloudsql.backupRuns.get 權限。這些權限包含在 Cloud SQL Admin 角色中。

如要將資料還原至其他專案中的執行個體,請按照下列步驟操作:

gcloud

  1. 列出執行個體的備份。

    gcloud sql backups list --instance INSTANCE_NAME

    INSTANCE_NAME 替換為執行個體名稱。

  2. 找出要使用的備份,並記錄其 ID 值。
  3. 將資料還原至其他專案中的執行個體。

    gcloud sql backups restore BACKUP_ID \
    --restore-instance=TARGET_INSTANCE_NAME \
    --backup-instance=SOURCE_INSTANCE_NAME \
    --backup-project=SOURCE_INSTANCE_PROJECT

    請將以下項目改為對應的值:

    • BACKUP_ID:備份的 ID。您在本程序稍早取得這個 ID。
    • TARGET_INSTANCE_NAME:您要還原資料的目標專案中的執行個體。
    • SOURCE_INSTANCE_NAME:來源專案中的執行個體,其中包含要還原至目的地專案執行個體的資料。
    • SOURCE_INSTANCE_PROJECT:包含來源執行個體的專案。

REST v1

如要取得 backupId,請執行下列指令。

使用任何要求資料之前,請先替換以下項目:

  • project-id:專案 ID
  • instance-id:執行個體 ID

HTTP 方法和網址:

GET https://sqladmin.googleapis.com/v1/projects/project-id/instances/instance-id/backupRuns

如要傳送要求,請展開以下其中一個選項:

您應該會收到如下的 JSON 回應:

將備份還原至其他專案中的執行個體:

使用任何要求資料之前,請先替換以下項目:

  • source-project-id:來源專案 ID
  • target-project-id:目標專案 ID
  • target-instance-id:目標執行個體 ID
  • source-instance-id:來源例項 ID
  • backup-id 備份 ID

HTTP 方法和網址:

POST https://sqladmin.googleapis.com/v1/projects/target-project-id/instances/target-instance-id/restoreBackup

JSON 要求主體:

{
  "restoreBackupContext":
  {
    "backupRunId": backup-id,
    "project": "source-project-id",
    "instanceId": "source-instance-id"
  }
}

如要傳送要求,請展開以下其中一個選項:

您應該會收到如下的 JSON 回應:

如要進一步瞭解 project 屬性,請參閱「restoreBackup

REST v1beta4

如要取得 backupId,請執行下列指令。

使用任何要求資料之前,請先替換以下項目:

  • project-id:專案 ID
  • instance-id:執行個體 ID

HTTP 方法和網址:

GET https://sqladmin.googleapis.com/sql/v1beta4/projects/project-id/instances/instance-id/backupRuns

如要傳送要求,請展開以下其中一個選項:

您應該會收到如下的 JSON 回應:

將備份還原至其他專案中的執行個體:

使用任何要求資料之前,請先替換以下項目:

  • source-project-id:來源專案 ID
  • target-project-id:目標專案 ID
  • target-instance-id:目標執行個體 ID
  • source-instance-id:來源例項 ID
  • backup-id 備份 ID

HTTP 方法和網址:

POST https://sqladmin.googleapis.com/sql/v1beta4/projects/target-project-id/instances/target-instance-id/restoreBackup

JSON 要求主體:

{
  "restoreBackupContext":
  {
    "backupRunId": backup-id,
    "project": "source-project-id",
    "instanceId": "source-instance-id"
  }
}

如要傳送要求,請展開以下其中一個選項:

您應該會收到如下的 JSON 回應:

如要進一步瞭解 project 屬性,請參閱 restoreBackup

從最終備份還原

您可以在下列情況下使用最終備份:

  • 將最終備份還原至新的執行個體
  • 還原至其他專案或區域的新執行個體

由於您使用的是已刪除的執行個體的最終備份來還原執行個體,因此也可以使用備份來建立具有已刪除執行個體設定的執行個體,並復原資料。

還原至新執行個體

從最終備份建立執行個體時,Cloud SQL 會使用最終備份所在執行個體的設定。建立執行個體後,Cloud SQL 會將資料還原至最後一次備份時的狀態。

控制台

  1. 前往 Google Cloud 控制台的「Cloud SQL 備份」頁面。

    前往 Cloud SQL 備份

    這個頁面會列出與 Google Cloud 專案相關聯的所有備份 (包括最終備份)。

  2. 按一下最終備份,其中包含要還原至新執行個體的資料。
  3. 在「最終備份」對話方塊中,按一下「還原」
  4. 在「Restore an instance from a backup」頁面中,確認您在「Review backup details」中選取了正確的備份。
  5. 在「選擇還原目的地」中,選取「還原至新執行個體」
  6. 從「Region」選單中,選取新執行個體的地區。
  7. 在「Instance ID」(執行個體 ID) 欄位中,輸入新執行個體的 ID。
  8. 如要開始還原程序,請按一下「還原」
  9. 如要查看還原作業的狀態,請前往執行個體的「Operations」頁面。

gcloud

  1. 如要列出 來源執行個體的最終備份,請使用 gcloud sql backups list 指令:
    gcloud sql backups list \
    --filter='type:FINAL instance: SOURCE_INSTANCE_NAME'
  2. 找出要使用的備份,並記錄其 NAME 值。
  3. 如要從指定的最終備份還原新的執行個體,請使用 gcloud sql backups restore 指令:
    gcloud sql backups restore BACKUP_NAME \
    --restore-instance=TARGET_INSTANCE_NAME 

REST v1

  1. 如要取得要使用的備份 ID,請列出來源執行個體的最終備份。

    使用任何要求資料之前,請先替換以下項目:

    • PROJECT_ID:專案 ID
    • INSTANCE_ID:執行個體 ID

    HTTP 方法和網址:

    GET https://sqladmin.googleapis.com/v1/projects/PROJECT_ID/backups?filter='type:FINAL AND instance:INSTANCE_ID'

    如要傳送要求,請展開以下其中一個選項:

    您應該會收到如下的 JSON 回應:

  2. 從指定的最終備份還原新的執行個體。

    使用任何要求資料之前,請先替換以下項目:

    • PROJECT_ID:專案 ID
    • TARGET_INSTANCE_ID:目標執行個體 ID
    • BACKUP_ID:備份 ID

    HTTP 方法和網址:

    POST https://sqladmin.googleapis.com/v1/projects/PROJECT_ID/instances/TARGET_INSTANCE_ID/restoreBackup

    JSON 要求主體:

    {
      backup: projects/PROJECT_ID/backups/BACKUP_ID
      restore_instance_settings: {}
    }
    

    如要傳送要求,請展開以下其中一個選項:

    您應該會收到如下的 JSON 回應:

REST v1beta4

  1. 如要取得要使用的備份 ID,請列出來源執行個體的最終備份。

    使用任何要求資料之前,請先替換以下項目:

    • PROJECT_ID:專案 ID
    • INSTANCE_ID:執行個體 ID

    HTTP 方法和網址:

    GET https://sqladmin.googleapis.com/sql/v1beta4/projects/PROJECT_ID/backups?filter='type:FINAL AND instance:INSTANCE_ID'

    如要傳送要求,請展開以下其中一個選項:

    您應該會收到如下的 JSON 回應:

  2. 從指定的最終備份還原新的執行個體。

    使用任何要求資料之前,請先替換以下項目:

    • PROJECT_ID:專案 ID
    • TARGET_INSTANCE_ID:目標執行個體 ID
    • BACKUP_ID:備份 ID

    HTTP 方法和網址:

    POST https://sqladmin.googleapis.com/sql/v1beta4/projects/PROJECT_ID/instances/TARGET_INSTANCE_ID/restoreBackup

    JSON 要求主體:

    {
      backup: projects/PROJECT_ID/backups/BACKUP_ID
      restore_instance_settings: {}
    }
    

    如要傳送要求,請展開以下其中一個選項:

    您應該會收到如下的 JSON 回應:

還原至現有執行個體

從最終備份還原資料至現有執行個體時,目標執行個體中的資料會更新為當初建立備份時的來源執行個體狀態。詳情請參閱有關執行還原的一般提示還原至不同執行個體的提示與需求

如果您需要專案的備份清單,但因服務中斷而無法在執行個體總覽頁面中查看,可以使用 backupRuns.list API。

控制台

  1. 前往 Google Cloud 控制台的「Cloud SQL 執行個體」頁面。

    前往 Cloud SQL 執行個體

  2. 如果目標執行個體有任何唯讀備用資源,請使用更多動作選單 更多動作圖示。 刪除這些項目。
  3. 前往 Google Cloud 控制台的「Cloud SQL 備份」頁面。

    前往 Cloud SQL 備份

    這個頁面會列出與 Google Cloud 專案相關聯的所有備份 (包括最終備份)。

  4. 按一下最終備份,其中包含要還原至其他執行個體的資料。
  5. 在「最終備份」對話方塊中,按一下「還原」
  6. 在「Restore an instance from a backup」頁面中,確認您在「Review backup details」中選取了正確的備份。
  7. 在「Choose restore destination」(選擇還原目的地) 中,選取「Overwrite an existing instance」(覆寫現有執行個體)
  8. 在「要覆寫的執行個體」選單中,選取要用於還原作業的執行個體。所選執行個體及其所有資料都會遭到覆寫。

  9. 如要確認您的選項,請在「Destination instance ID」欄位中輸入要覆寫的執行個體名稱。
  10. 如要開始還原程序,請按一下「還原」
  11. 如要查看還原作業的狀態,請前往執行個體的「Operations」頁面。
  12. 還原作業完成後,請重建您在此程序中刪除的所有副本。

gcloud

  1. 如要判斷目標執行個體是否有任何唯讀備用資源,請使用 gcloud sql instances describe 指令:
    gcloud sql instances describe TARGET_INSTANCE_NAME

    請注意 replicaNames 欄中列出的所有例項。

  2. 如要刪除所有複本,請使用 gcloud sql instances delete 指令:
    gcloud sql instances delete REPLICA_NAME

    以相同的步驟刪除所有備用資源。

  3. 如要列出來源執行個體的最終備份,請使用 gcloud sql backups list 指令:
    gcloud sql backups list \
    --filter='type:FINAL instance: SOURCE_INSTANCE_NAME'
  4. 找出要使用的備份,並記錄其 NAME 值。
  5. 如要從備份還原目標執行個體,請使用 gcloud sql backups restore 指令:
    gcloud sql backups restore BACKUP_NAME \
    --restore-instance=TARGET_INSTANCE_NAME
  6. 還原作業完成後,請重新建立您在此程序中刪除的所有副本。

REST v1

  1. 如要判斷執行個體是否有任何唯讀備用資源,並取得這些備用資源的 ID,請列出目標執行個體的所有備用資源。

    使用任何要求資料之前,請先替換以下項目:

    • PROJECT_ID:專案 ID
    • INSTANCE_ID:執行個體 ID

    HTTP 方法和網址:

    GET https://sqladmin.googleapis.com/v1/projects/PROJECT_ID/instances/INSTANCE_ID?fields=replicaNames

    如要傳送要求,請展開以下其中一個選項:

    您應該會收到如下的 JSON 回應:

  2. 刪除所有複本。

    使用任何要求資料之前,請先替換以下項目:

    • PROJECT_ID:專案 ID
    • REPLICA_ID:備用資源 ID

    HTTP 方法和網址:

    DELETE https://sqladmin.googleapis.com/v1/projects/PROJECT_ID/instances/REPLICA_ID

    如要傳送要求,請展開以下其中一個選項:

    您應該會收到如下的 JSON 回應:

    針對每個複本重複上述步驟。

  3. 如要取得要使用的最終備份 ID,請列出來源執行個體的備份。

    使用任何要求資料之前,請先替換以下項目:

    • PROJECT_ID:專案 ID
    • INSTANCE_ID:執行個體 ID

    HTTP 方法和網址:

    GET https://sqladmin.googleapis.com/v1/projects/PROJECT_ID/backups?filter='type:FINAL AND instance:INSTANCE_ID'

    如要傳送要求,請展開以下其中一個選項:

    您應該會收到如下的 JSON 回應:

  4. 從備份還原目標執行個體。

    使用任何要求資料之前,請先替換以下項目:

    • PROJECT_ID:專案 ID
    • TARGET_INSTANCE_ID:目標執行個體 ID
    • BACKUP_ID:備份 ID

    HTTP 方法和網址:

    POST https://sqladmin.googleapis.com/v1/projects/PROJECT_ID/instances/TARGET_INSTANCE_ID/restoreBackup

    JSON 要求主體:

    {
      backup: projects/PROJECT_ID/backups/BACKUP_ID
    }
    

    如要傳送要求,請展開以下其中一個選項:

    您應該會收到如下的 JSON 回應:

  5. 還原作業完成後,請重建您在此程序中刪除的所有副本。

REST v1beta4

  1. 如要判斷執行個體是否有任何唯讀備用資源,並取得這些備用資源的 ID,請列出目標執行個體的所有備用資源。

    使用任何要求資料之前,請先替換以下項目:

    • PROJECT_ID:專案 ID
    • INSTANCE_ID:執行個體 ID

    HTTP 方法和網址:

    GET https://sqladmin.googleapis.com/sql/v1beta4/projects/PROJECT_ID/instances/INSTANCE_ID?fields=replicaNames

    如要傳送要求,請展開以下其中一個選項:

    您應該會收到如下的 JSON 回應:

  2. 刪除所有複本。

    使用任何要求資料之前,請先替換以下項目:

    • PROJECT_ID:專案 ID
    • REPLICA_ID:備用資源 ID

    HTTP 方法和網址:

    DELETE https://sqladmin.googleapis.com/sql/v1beta4/projects/PROJECT_ID/instances/REPLICA_ID

    如要傳送要求,請展開以下其中一個選項:

    您應該會收到如下的 JSON 回應:

    針對每個複本重複上述步驟。

  3. 如要取得您想使用的最終備份 ID,請列出該來源執行個體的備份。

    使用任何要求資料之前,請先替換以下項目:

    • PROJECT_ID:專案 ID
    • INSTANCE_ID:執行個體 ID

    HTTP 方法和網址:

    GET https://sqladmin.googleapis.com/sql/v1beta4/projects/PROJECT_ID/backups?filter='type:FINAL AND instance:INSTANCE_ID'

    如要傳送要求,請展開以下其中一個選項:

    您應該會收到如下的 JSON 回應:

  4. 從備份還原目標執行個體。

    使用任何要求資料之前,請先替換以下項目:

    • PROJECT_ID:專案 ID
    • TARGET_INSTANCE_ID:目標執行個體 ID
    • BACKUP_ID:備份 ID

    HTTP 方法和網址:

    POST https://sqladmin.googleapis.com/sql/v1beta4/projects/PROJECT_ID/instances/TARGET_INSTANCE_ID/restoreBackup

    JSON 要求主體:

    {
      backup: projects/PROJECT_ID/backups/BACKUP_ID
    }
    

    如要傳送要求,請展開以下其中一個選項:

    您應該會收到如下的 JSON 回應:

  5. 還原作業完成後,請重新建立您在此程序中刪除的所有副本。

還原至其他專案中的執行個體

將資料還原至不同專案中的執行個體時,使用者必須具備 cloudsql.instances.restoreBackup 權限、目標專案的 cloudsql.instances.create 權限,以及來源執行個體的 cloudsql.backupRuns.get 權限。這些權限包含在 Cloud SQL Admin 角色中。

如要將資料還原至其他專案中的執行個體,請按照下列步驟操作:

REST v1

如要取得最終備份的 backupId,請執行下列指令:

使用任何要求資料之前,請先替換以下項目:

  • PROJECT_ID:專案 ID
  • INSTANCE_ID:執行個體 ID

HTTP 方法和網址:

GET https://sqladmin.googleapis.com/v1/projects/PROJECT_ID/backups?filter='type:FINAL AND instance:INSTANCE_ID'

如要傳送要求,請展開以下其中一個選項:

您應該會收到如下的 JSON 回應:

將備份還原至其他專案中的執行個體:

使用任何要求資料之前,請先替換以下項目:

  • PROJECT_ID:專案 ID
  • TARGET_INSTANCE_ID:目標執行個體 ID
  • BACKUP_ID:備份 ID

HTTP 方法和網址:

POST https://sqladmin.googleapis.com/v1/projects/PROJECT_ID/instances/TARGET_INSTANCE_ID/restoreBackup

JSON 要求主體:

{
  backup: projects/PROJECT_ID/backups/BACKUP_ID
}

如要傳送要求,請展開以下其中一個選項:

您應該會收到如下的 JSON 回應:

如要進一步瞭解 project 屬性,請參閱「restoreBackup

REST v1beta4

如要取得最終備份的 backupId,請執行下列指令:

使用任何要求資料之前,請先替換以下項目:

  • PROJECT_ID:專案 ID
  • INSTANCE_ID:執行個體 ID

HTTP 方法和網址:

GET https://sqladmin.googleapis.com/sql/v1beta4/projects/PROJECT_ID/backups?filter='type:FINAL AND instance:INSTANCE_ID'

如要傳送要求,請展開以下其中一個選項:

您應該會收到如下的 JSON 回應:

將備份還原至其他專案中的執行個體:

使用任何要求資料之前,請先替換以下項目:

  • PROJECT_ID:專案 ID
  • TARGET_INSTANCE_ID:目標執行個體 ID
  • BACKUP_ID:備份 ID

HTTP 方法和網址:

POST https://sqladmin.googleapis.com/sql/v1beta4/projects/PROJECT_ID/instances/TARGET_INSTANCE_ID/restoreBackup

JSON 要求主體:

{
  backup: projects/PROJECT_ID/backups/BACKUP_ID
}

如要傳送要求,請展開以下其中一個選項:

您應該會收到如下的 JSON 回應:

如要進一步瞭解 project 屬性,請參閱 restoreBackup

還原至其他區域的新執行個體

將資料還原至其他區域的新執行個體的使用者,必須具備目標專案的 cloudsql.instances.restoreBackup 權限,以及來源執行個體的 cloudsql.backupRuns.get 權限。這些權限包含在 Cloud SQL Admin 角色中。

此外,如要在其他區域建立執行個體,您必須符合該區域的機構政策條件。

如要將資料還原至其他區域的新執行個體,請按照下列步驟操作:

gcloud

  1. 如要列出 來源執行個體的最終備份,請使用 gcloud sql backups list 指令:
    gcloud sql backups list \
    --filter='type:FINAL instance: SOURCE_INSTANCE_NAME'
  2. 找出要使用的備份,並記錄其 NAME 值。
  3. 如要使用最終備份將資料還原至其他地區的新執行個體,請使用 gcloud sql backups restore 指令:
    gcloud sql backups restore BACKUP_NAME \
    --restore-instance=TARGET_INSTANCE_NAME \
    --region=TARGET_REGION 

REST v1

如要取得最終備份的 backupId,請執行下列指令:

使用任何要求資料之前,請先替換以下項目:

  • PROJECT_ID:專案 ID
  • INSTANCE_ID:執行個體 ID

HTTP 方法和網址:

GET https://sqladmin.googleapis.com/v1/projects/PROJECT_ID/backups?filter='type:FINAL AND instance:INSTANCE_ID'

如要傳送要求,請展開以下其中一個選項:

您應該會收到如下的 JSON 回應:

將備份還原至其他區域的新執行個體:

使用任何要求資料之前,請先替換以下項目:

  • PROJECT_ID:專案 ID
  • TARGET_INSTANCE_ID:目標執行個體 ID
  • BACKUP_ID:備份 ID
  • REGION:目標例項的區域 (例如 us-central1)

HTTP 方法和網址:

POST https://sqladmin.googleapis.com/v1/projects/PROJECT_ID/instances/TARGET_INSTANCE_ID/restoreBackup

JSON 要求主體:

{
  backup: projects/PROJECT_ID/backups/BACKUP_ID
  restore_instance_settings: {
    region: REGION
  }
}

如要傳送要求,請展開以下其中一個選項:

您應該會收到如下的 JSON 回應:

如要進一步瞭解 project 屬性,請參閱「restoreBackup

REST v1beta4

如要取得最終備份的 backupId,請執行下列指令:

使用任何要求資料之前,請先替換以下項目:

  • PROJECT_ID:專案 ID
  • INSTANCE_ID:執行個體 ID

HTTP 方法和網址:

GET https://sqladmin.googleapis.com/sql/v1beta4/projects/PROJECT_ID/backups?filter='type:FINAL AND instance:INSTANCE_ID'

如要傳送要求,請展開以下其中一個選項:

您應該會收到如下的 JSON 回應:

將備份還原至其他區域的新執行個體:

使用任何要求資料之前,請先替換以下項目:

  • PROJECT_ID:專案 ID
  • TARGET_INSTANCE_ID:目標執行個體 ID
  • BACKUP_ID:備份 ID
  • REGION:目標例項的區域 (例如 us-central1)

HTTP 方法和網址:

POST https://sqladmin.googleapis.com/sql/v1beta4/projects/PROJECT_ID/instances/TARGET_INSTANCE_ID/restoreBackup

JSON 要求主體:

{
  backup: projects/PROJECT_ID/backups/BACKUP_ID
  restore_instance_settings: {
    region: REGION
  }
}

如要傳送要求,請展開以下其中一個選項:

您應該會收到如下的 JSON 回應:

如要進一步瞭解 project 屬性,請參閱 restoreBackup

從保留的備份還原

您可以在下列情況下使用保留備份

  • 將保留的備份還原至新的執行個體
  • 將保留的備份還原至現有執行個體
  • 還原至其他專案或區域的新執行個體或現有執行個體

由於您使用的是已刪除的執行個體保留備份來還原執行個體,因此也可以使用備份來建立具有已刪除執行個體設定的執行個體,並復原資料。

將保留的備份還原至新的執行個體

從保留備份建立新執行個體時,Cloud SQL 會使用保留備份所在執行個體的設定。

如要將資料從保留的備份還原至新執行個體,您必須具備 cloudsql.instances.create 權限。

主控台

  1. 前往 Google Cloud 控制台的「Cloud SQL 備份」頁面。

    前往 Cloud SQL 備份

  2. 按一下已刪除的執行個體名稱,該執行個體包含您要還原的備份。

  3. 找出要還原的備份名稱,然後按一下「還原」

  4. 在「Restore an instance from a backup」頁面中,確認您在「Review backup details」中選取了正確的備份。

  5. 在「選擇還原目的地」中,選取「還原至新執行個體」

  6. 從「Region」選單中,選取新執行個體的地區。

  7. 在「Instance ID」欄位中,輸入新執行個體的 ID。

  8. 按一下「還原」

    Cloud SQL 會將備份還原至新的執行個體。如要查看還原作業的狀態,請前往執行個體的「Operations」(作業) 頁面。

gcloud

  1. 使用 gcloud sql backups list 找出要儲存至新執行個體的備份。

    gcloud sql backups list
    --project=PROJECT_ID
    

    更改下列內容:

    • PROJECT_ID: Google Cloud 專案的 ID。
  2. 找出要使用的備份,並記錄其 BACKUP_NAME 值。

  3. 如要還原至新的執行個體,請使用 gcloud sql backups restore 指令:

    gcloud sql backups restore BACKUP_NAME
    --restore-instance=TARGET_INSTANCE_NAME
    

    更改下列內容:

    • BACKUP_NAME:您要還原的保留備份名稱。

    • TARGET_INSTANCE_NAME:您要還原備份的全新執行個體名稱。

REST v1

從指定的保留備份還原新的執行個體

使用任何要求資料之前,請先替換以下項目:

  • PROJECT_ID:專案 ID
  • TARGET_INSTANCE_ID:目標執行個體 ID
  • BACKUP_ID:備份 ID

HTTP 方法和網址:

POST https://sqladmin.googleapis.com/v1/projects/PROJECT_ID/instances/TARGET_INSTANCE_ID/restoreBackup

JSON 要求主體:

{
  backup: projects/PROJECT_ID/backups/BACKUP_ID
  restore_instance_settings: {}
}

如要傳送要求,請展開以下其中一個選項:

您應該會收到如下的 JSON 回應:

REST v1beta4

從指定的保留備份還原新的執行個體

使用任何要求資料之前,請先替換以下項目:

  • PROJECT_ID:專案 ID
  • TARGET_INSTANCE_ID:目標執行個體 ID
  • BACKUP_ID:備份 ID

HTTP 方法和網址:

POST https://sqladmin.googleapis.com/sql/v1beta4/projects/PROJECT_ID/instances/TARGET_INSTANCE_ID/restoreBackup

JSON 要求主體:

{
  backup: projects/PROJECT_ID/backups/BACKUP_ID
  restore_instance_settings: {}
}

如要傳送要求,請展開以下其中一個選項:

您應該會收到如下的 JSON 回應:

將保留的備份還原至現有執行個體

從保留備份還原資料至現有執行個體時,目標執行個體中的資料會更新為當初建立備份時的來源執行個體狀態。

主控台

  1. 前往 Google Cloud 控制台的「Cloud SQL 執行個體」頁面。

    前往 Cloud SQL 執行個體

  2. 如果目標執行個體有任何唯讀備用資源,請使用更多動作選單 更多動作圖示。 刪除這些項目。您必須先刪除所有備用資源,才能將保留的備份還原至現有執行個體。

  3. 前往 Google Cloud 控制台的「Cloud SQL 備份」頁面。

    前往 Cloud SQL 備份

  4. 按一下已刪除的執行個體名稱,該執行個體包含您要還原的備份。

  5. 找出要還原的備份名稱,然後按一下「還原」

  6. 在「Restore an instance from a backup」頁面中,確認您在「Review backup details」中選取了正確的備份。

  7. 在「Choose restore destination」(選擇還原目的地) 中,選取「Overwrite an existing instance」(覆寫現有執行個體)

  8. 在「要覆寫的執行個體」選單中,選取要用於還原作業的執行個體。所選執行個體及其所有資料都會遭到覆寫。

  9. 如要確認您的選項,請在「Destination instance ID」欄位中輸入要覆寫的執行個體名稱。

  10. 按一下「還原」

    Cloud SQL 會將備份還原至新的執行個體。如要查看還原作業的狀態,請前往執行個體的「Operations」(作業) 頁面。

    還原作業完成後,您可以建立任何副本。

gcloud

  1. 使用 gcloud sql instances describe 指令判斷目標執行個體是否有任何唯讀備用資源:

    gcloud sql instance describe TARGET_INSTANCE_NAME
    

    更改下列內容:

    • TARGET_INSTANCE_NAME:您要將備份還原至的目標執行個體名稱。
  2. 使用 gcloud sql instances delete 指令刪除目標執行個體的所有副本:

    gcloud sql instance delete REPLICA_NAME
    

    更改下列內容:

    • REPLICA_NAME:要刪除的目標執行個體副本名稱。

    您必須先刪除所有複本,才能還原至現有執行個體。

  3. 使用 gcloud sql backups list 找出要儲存至新執行個體的備份。

    gcloud sql backups list
    --project=PROJECT_ID
    

    更改下列內容:

    • PROJECT_ID: Google Cloud 專案的 ID。
  4. 找出要使用的備份,並記錄其 BACKUP_NAME 值。

  5. 如要還原至新的執行個體,請使用 gcloud sql backups restore 指令:

    gcloud sql backups restore BACKUP_NAME
    --restore-instance=TARGET_INSTANCE_NAME
    

    更改下列內容:

    • BACKUP_NAME:您要還原的保留備份名稱。

    • TARGET_INSTANCE_NAME:您要還原備份的全新執行個體名稱。

    還原作業完成後,請重新建立所有已刪除的備援機制。

REST v1

  1. 如要判斷執行個體是否有任何唯讀備用資源,並取得這些備用資源的 ID,請列出目標執行個體的所有備用資源。

    使用任何要求資料之前,請先替換以下項目:

    • PROJECT_ID:專案 ID
    • INSTANCE_ID:執行個體 ID

    HTTP 方法和網址:

    GET https://sqladmin.googleapis.com/sql/v1beta4/projects/PROJECT_ID/instances/INSTANCE_ID?fields=replicaNames

    如要傳送要求,請展開以下其中一個選項:

    您應該會收到如下的 JSON 回應:

  2. 刪除目標執行個體的所有備援機器。

    使用任何要求資料之前,請先替換以下項目:

    • PROJECT_ID:專案 ID
    • REPLICA_ID:備用資源 ID

    HTTP 方法和網址:

    DELETE https://sqladmin.googleapis.com/v1/projects/PROJECT_ID/instances/REPLICA_ID

    如要傳送要求,請展開以下其中一個選項:

    您應該會收到如下的 JSON 回應:

  3. 取得要還原的保留備份 ID。

    使用任何要求資料之前,請先替換以下項目:

    • PROJECT_ID:專案 ID

    HTTP 方法和網址:

    GET https://sqladmin.googleapis.com/v1/projects/PROJECT_ID/backups

    如要傳送要求,請展開以下其中一個選項:

    您應該會收到如下的 JSON 回應:

  4. 從保留的備份還原目標執行個體。

    使用任何要求資料之前,請先替換以下項目:

    • PROJECT_ID:專案 ID
    • TARGET_INSTANCE_ID:目標執行個體 ID
    • BACKUP_ID:備份 ID

    HTTP 方法和網址:

    POST https://sqladmin.googleapis.com/v1/projects/PROJECT_ID/instances/TARGET_INSTANCE_ID/restoreBackup

    JSON 要求主體:

    {
      backup: projects/PROJECT_ID/backups/BACKUP_ID
    }
    

    如要傳送要求,請展開以下其中一個選項:

    您應該會收到如下的 JSON 回應:

REST v1beta4

  1. 如要判斷執行個體是否有任何唯讀備用資源,並取得這些備用資源的 ID,請列出目標執行個體的所有備用資源。

    使用任何要求資料之前,請先替換以下項目:

    • PROJECT_ID:專案 ID
    • INSTANCE_ID:執行個體 ID

    HTTP 方法和網址:

    GET https://sqladmin.googleapis.com/sql/v1beta4/projects/PROJECT_ID/instances/INSTANCE_ID?fields=replicaNames

    如要傳送要求,請展開以下其中一個選項:

    您應該會收到如下的 JSON 回應:

  2. 刪除目標執行個體的所有備援機器。

    使用任何要求資料之前,請先替換以下項目:

    • PROJECT_ID:專案 ID
    • REPLICA_ID:備用資源 ID

    HTTP 方法和網址:

    DELETE https://sqladmin.googleapis.com/sql/v1beta4/projects/PROJECT_ID/instances/REPLICA_ID

    如要傳送要求,請展開以下其中一個選項:

    您應該會收到如下的 JSON 回應:

  3. 取得要還原的保留備份 ID。

    使用任何要求資料之前,請先替換以下項目:

    • PROJECT_ID:專案 ID

    HTTP 方法和網址:

    GET https://sqladmin.googleapis.com/sql/v1beta4/projects/PROJECT_ID/backups

    如要傳送要求,請展開以下其中一個選項:

    您應該會收到如下的 JSON 回應:

  4. 從保留的備份還原目標執行個體。

    使用任何要求資料之前,請先替換以下項目:

    • PROJECT_ID:專案 ID
    • TARGET_INSTANCE_ID:目標執行個體 ID
    • BACKUP_ID:備份 ID

    HTTP 方法和網址:

    POST https://sqladmin.googleapis.com/sql/v1beta4/projects/PROJECT_ID/instances/TARGET_INSTANCE_ID/restoreBackup

    JSON 要求主體:

    {
      backup: projects/PROJECT_ID/backups/BACKUP_ID
    }
    

    如要傳送要求,請展開以下其中一個選項:

    您應該會收到如下的 JSON 回應:

還原至其他專案中的執行個體

如要使用其他專案中的保留備份還原執行個體,您必須具備下列權限:

您只能使用 gcloud CLI 或 Cloud SQL API 將資料還原至其他專案。

gcloud

  1. 使用 gcloud sql backups list 找出要儲存至新執行個體的備份。

    gcloud sql backups list
    --project=PROJECT_ID
    

    更改下列內容:

    • PROJECT_ID: Google Cloud 專案的 ID。
  2. 找出要使用的備份,並記錄其 BACKUP_NAME 值。

  3. 如要還原至新的執行個體,請使用 gcloud sql backups restore 指令:

    gcloud sql backups restore BACKUP_ID
    --restore-instance=TARGET_INSTANCE_NAME
    

    更改下列內容:

    • BACKUP_ID:您要還原的保留備份名稱。

    • TARGET_INSTANCE_NAME:您要將備份還原至的目標專案中新建立的執行個體名稱。

REST v1

如要取得保留備份的 backupID,請執行下列指令:

使用任何要求資料之前,請先替換以下項目:

  • PROJECT_ID:專案 ID

HTTP 方法和網址:

GET https://sqladmin.googleapis.com/v1/projects/PROJECT_ID/backups

如要傳送要求,請展開以下其中一個選項:

您應該會收到如下的 JSON 回應:

還原至其他專案

使用任何要求資料之前,請先替換以下項目:

  • PROJECT_ID:專案 ID
  • TARGET_INSTANCE_ID:目標執行個體 ID
  • BACKUP_ID:備份 ID

HTTP 方法和網址:

POST https://sqladmin.googleapis.com/v1/projects/PROJECT_ID/instances/TARGET_INSTANCE_ID/restoreBackup

JSON 要求主體:

{
  backup: projects/PROJECT_ID/backups/BACKUP_ID
}

如要傳送要求,請展開以下其中一個選項:

您應該會收到如下的 JSON 回應:

REST v1beta4

如要取得保留備份的 backupID,請執行下列指令:

使用任何要求資料之前,請先替換以下項目:

  • PROJECT_ID:專案 ID

HTTP 方法和網址:

GET https://sqladmin.googleapis.com/sql/v1beta4/projects/PROJECT_ID/backups

如要傳送要求,請展開以下其中一個選項:

您應該會收到如下的 JSON 回應:

還原至其他專案

使用任何要求資料之前,請先替換以下項目:

  • PROJECT_ID:專案 ID
  • TARGET_INSTANCE_ID:目標執行個體 ID
  • BACKUP_ID:備份 ID

HTTP 方法和網址:

POST https://sqladmin.googleapis.com/sql/v1beta4/projects/PROJECT_ID/instances/TARGET_INSTANCE_ID/restoreBackup

JSON 要求主體:

{
  backup: projects/PROJECT_ID/backups/BACKUP_ID
}

如要傳送要求,請展開以下其中一個選項:

您應該會收到如下的 JSON 回應:

還原至其他區域的執行個體

如要使用不同區域的保留備份還原執行個體,您必須具備下列權限:

您只能使用 gcloud CLI 或 Cloud SQL API 將資料還原至其他區域。目標區域必須符合該區域的機構政策

gcloud

  1. 使用 gcloud sql backups list 找出要儲存至新執行個體的備份。

    gcloud sql backups list
    --project=PROJECT_ID
    

    更改下列內容:

    • PROJECT_ID: Google Cloud 專案的 ID。
  2. 找出要使用的備份,並記錄其 NAME 值。

  3. 如要還原至新的執行個體,請使用 gcloud sql backups restore 指令:

    gcloud sql backups restore BACKUP_ID
    --restore-instance=TARGET_INSTANCE_NAME
    --region=TARGET_REGION
    

    更改下列內容:

    • BACKUP_ID:您要還原的保留備份名稱。

    • TARGET_INSTANCE_NAME:您要將備份還原至的目標專案中新建立的執行個體名稱。

    • TARGET_REGION:要還原備份的新區域。

REST v1

如要取得保留備份的 backupID,請執行下列指令:

使用任何要求資料之前,請先替換以下項目:

  • PROJECT_ID:專案 ID

HTTP 方法和網址:

GET https://sqladmin.googleapis.com/v1/projects/PROJECT_ID/backups

如要傳送要求,請展開以下其中一個選項:

您應該會收到如下的 JSON 回應:

還原至其他專案

使用任何要求資料之前,請先替換以下項目:

  • PROJECT_ID:專案 ID
  • TARGET_INSTANCE_ID:目標執行個體 ID
  • BACKUP_ID:備份 ID
  • REGION:目標例項的區域 (例如 us-central1)

HTTP 方法和網址:

POST https://sqladmin.googleapis.com/v1/projects/PROJECT_ID/instances/TARGET_INSTANCE_ID/restoreBackup

JSON 要求主體:

{
  backup: projects/PROJECT_ID/backups/BACKUP_ID
  restore_instance_settings: {
    region: REGION
  }
}

如要傳送要求,請展開以下其中一個選項:

您應該會收到如下的 JSON 回應:

REST v1beta4

如要取得保留備份的 backupID,請執行下列指令:

使用任何要求資料之前,請先替換以下項目:

  • PROJECT_ID:專案 ID

HTTP 方法和網址:

GET https://sqladmin.googleapis.com/sql/v1beta4/projects/PROJECT_ID/backups

如要傳送要求,請展開以下其中一個選項:

您應該會收到如下的 JSON 回應:

還原至其他專案

使用任何要求資料之前,請先替換以下項目:

  • PROJECT_ID:專案 ID
  • TARGET_INSTANCE_ID:目標執行個體 ID
  • BACKUP_ID:備份 ID
  • REGION:目標例項的區域 (例如 us-central1)

HTTP 方法和網址:

POST https://sqladmin.googleapis.com/sql/v1beta4/projects/PROJECT_ID/instances/TARGET_INSTANCE_ID/restoreBackup

JSON 要求主體:

{
  backup: projects/PROJECT_ID/backups/BACKUP_ID
  restore_instance_settings: {
    region: REGION
  }
}

如要傳送要求,請展開以下其中一個選項:

您應該會收到如下的 JSON 回應:

執行時間點復原

如要執行時間點復原,請參閱「時間點復原」。

後續步驟