啟用及停用高可用性

本頁說明如何設定高可用性的執行個體。

您可以在建立執行個體時設定高可用性,也可以對現有執行個體啟用高可用性。

如要進一步瞭解高可用性,請參閱高可用性設定總覽

高可用性的舊版設定使用failover replica執行個體。新設定不會使用 failover replica。 而是使用 Google 的區域永久磁碟,在區域內的兩個可用區之間,以區塊層級同步複製資料。如果您現有的 MySQL 執行個體使用舊版高可用性設定,可以更新設定,改用目前版本。如需與舊版高可用性設定相關的其他程序,請參閱「高可用性舊版設定」。

建立高可用性的新執行個體

建立高可用性執行個體時,Cloud SQL 會將該執行個體設定為區域執行個體。

建立高可用性的執行個體:

控制台

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

    前往 Cloud SQL 執行個體

  2. 選取「建立執行個體」
  3. 選取資料庫引擎。
  4. 在「Choose region and zonal availability」(選擇區域和可用區供應情形) 專區中,選取「Multiple zones (Highly available)」(多可用區 (高可用性))
  5. 展開「指定可用區」
  6. 選取主要和次要可用區。在建立或編輯執行個體時使用次要區域,須符合下列條件:
    • 主要可用區預設為 Any,次要可用區則為 Any (different from primary)
    • 如果同時指定主要和次要可用區,兩者必須不同。

  7. 按一下「儲存」

    系統會將您帶回主要執行個體的執行個體頁面,並更新執行個體。

gcloud

  1. 建立區域執行個體:
    gcloud sql instances create REGIONAL_INSTANCE_NAME \
    --availability-type=REGIONAL \
    --database-version=DATABASE_VERSION \
    --tier=MACHINE_TYPE \
    --enable-bin-log
    如需可用參數的完整清單,請參閱 gcloud sql instances create 參考資料頁面。
  2. 您可以使用 --zone--secondary-zone 參數,同時指定主要和次要區域。在建立或編輯執行個體時使用次要區域,會受到下列限制:
    • 可用區必須是有效可用區。
    • 如果指定次要可用區,也必須指定主要可用區。
    • 如果指定主要和次要可用區,兩者必須不同。
    • 如果指定主要和次要可用區,兩者必須位於同一區域。
  3. 設定 root 使用者:
    gcloud sql users set-password root --host=% \
    --instance=PRIMARY_INSTANCE_NAME \
    --password=PASSWORD

Terraform

如要建立高可用性執行個體,請使用 Terraform 資源

resource "google_sql_database_instance" "mysql_instance_ha" {
  name             = "mysql-instance-ha"
  region           = "asia-northeast1"
  database_version = "MYSQL_8_0"
  settings {
    tier              = "db-f1-micro"
    availability_type = "REGIONAL"
    backup_configuration {
      enabled            = true
      binary_log_enabled = true
      start_time         = "20:55"
    }
  }
  # set `deletion_protection` to true, will ensure that one cannot accidentally delete this instance by
  # use of Terraform whereas `deletion_protection_enabled` flag protects this instance at the GCP level.
  deletion_protection = false
}

套用變更

如要在 Google Cloud 專案中套用 Terraform 設定,請完成下列各節的步驟。

準備 Cloud Shell

  1. 啟動 Cloud Shell
  2. 設定要套用 Terraform 設定的預設 Google Cloud 專案。

    每項專案只需要執行一次這個指令,且可以在任何目錄中執行。

    export GOOGLE_CLOUD_PROJECT=PROJECT_ID

    如果您在 Terraform 設定檔中設定明確值,環境變數就會遭到覆寫。

準備目錄

每個 Terraform 設定檔都必須有自己的目錄 (也稱為根模組)。

  1. Cloud Shell 中建立目錄,並在該目錄中建立新檔案。檔案名稱的副檔名必須是 .tf,例如 main.tf。在本教學課程中,這個檔案稱為 main.tf
    mkdir DIRECTORY && cd DIRECTORY && touch main.tf
  2. 如果您正在學習教學課程,可以複製每個章節或步驟中的範例程式碼。

    將範例程式碼複製到新建立的 main.tf

    視需要從 GitHub 複製程式碼。如果 Terraform 程式碼片段是端對端解決方案的一部分,建議您使用這個方法。

  3. 查看並修改範例參數,套用至您的環境。
  4. 儲存變更。
  5. 初始化 Terraform。每個目錄只需執行一次這項操作。
    terraform init

    如要使用最新版 Google 供應商,請加入 -upgrade 選項:

    terraform init -upgrade

套用變更

  1. 檢查設定,確認 Terraform 即將建立或更新的資源符合您的預期:
    terraform plan

    視需要修正設定。

  2. 執行下列指令,並在提示中輸入 yes,即可套用 Terraform 設定:
    terraform apply

    等待 Terraform 顯示「Apply complete!」訊息。

  3. 開啟 Google Cloud 專案即可查看結果。在 Google Cloud 控制台中,前往 UI 中的資源,確認 Terraform 已建立或更新這些資源。

刪除變更

如要刪除變更,請按照下列步驟操作:

  1. 如要停用防刪除功能,請在 Terraform 設定檔中將 deletion_protection 引數設為 false
    deletion_protection =  "false"
  2. 執行下列指令,並在提示中輸入 yes,套用更新的 Terraform 設定:
    terraform apply
  1. 執行下列指令,並在提示中輸入 yes,移除先前透過 Terraform 設定套用的資源:

    terraform destroy

REST v1

如需此要求的完整參數清單,請參閱執行個體:插入頁面。

建立區域執行個體。

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

    • project-id:專案 ID
    • instance-name:執行個體名稱
    • database-version:資料庫版本列舉字串
    • region GCP 區域
    • machine-type 機器類型

    HTTP 方法和網址:

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

    JSON 要求主體:

    {
      "name": "instance-name",
      "region": "region",
      "databaseVersion": "database-version",
       "settings": {
         "tier": "machine-type",
         "backupConfiguration": {
             "binaryLogEnabled": true,
             "enabled": true
          },
          "availabilityType": "REGIONAL"
       }
    }
    

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

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

  2. 執行個體完成初始化後,請更新執行個體的根密碼:

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

    • project-id:專案 ID
    • instance-id:執行個體 ID
    • password:新的根使用者密碼

    HTTP 方法和網址:

    PATCH https://sqladmin.googleapis.com/v1/projects/project-id/instances/instance-id/users?name=root&host=%25'

    JSON 要求主體:

    {
       "name": "root",
       "host": "%",
       "password": "password"}
    

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

    您應該會收到執行成功的狀態碼 (2xx) 和空白回應。

REST v1beta4

如需此要求的完整參數清單,請參閱執行個體:插入頁面。

建立區域執行個體。

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

    • project-id:專案 ID
    • instance-name:執行個體名稱
    • database-version:資料庫版本列舉字串
    • region GCP 區域
    • machine-type 機器類型

    HTTP 方法和網址:

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

    JSON 要求主體:

    {
      "name": "instance-name",
      "region": "region",
      "databaseVersion": "database-version",
       "settings": {
         "tier": "machine-type",
         "backupConfiguration": {
             "binaryLogEnabled": true,
             "enabled": true
          },
          "availabilityType": "REGIONAL"
       }
    }
    

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

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

  2. 執行個體完成初始化後,請更新執行個體的根密碼:

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

    • project-id:專案 ID
    • instance-id:執行個體 ID
    • password:新的根使用者密碼

    HTTP 方法和網址:

    PATCH https://sqladmin.googleapis.com/sql/v1beta4/projects/project-id/instances/instance-id/users?name=root&host=%25'

    JSON 要求主體:

    {
       "name": "root",
       "host": "%",
       "password": "password"}
    

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

    您應該會收到執行成功的狀態碼 (2xx) 和空白回應。

如需進一步瞭解如何建立執行個體,請參閱建立執行個體

為現有執行個體設定高可用性

您可以使用 Google Cloud 控制台、gcloud CLI 或 API,設定 Cloud SQL 執行個體的高可用性。

控制台

如要設定高可用性的執行個體,請按照下列步驟操作:

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

    前往 Cloud SQL 執行個體

  2. 如要開啟執行個體的「總覽」頁面,請按一下執行個體名稱。
  3. 按一下 [編輯]
  4. 在「Choose region and zonal availability」(選擇區域和可用區供應情形) 專區中,選取「Multiple zones (Highly available)」(多可用區 (高可用性))
  5. 展開「指定可用區」
  6. 選取主要和次要可用區。建立或編輯執行個體時,使用次要可用區須符合下列條件:
    • 主要可用區預設為 Any,次要可用區則為 Any (different from primary)
    • 如果您同時指定主要和次要可用區,則兩者必須不同。

  7. 按一下 [儲存]

gcloud

如要將執行個體設定為高可用性的區域執行個體,請使用 gcloud sql instances patch 指令:

gcloud sql instances patch INSTANCE_NAME \
--availability-type REGIONAL \
--enable-bin-log \
--backup-start-time=HH:MM

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

  • INSTANCE_NAME:您要設定高可用性的 Cloud SQL 執行個體名稱
  • HH:MM:時間 (以小時和分鐘為單位)

REST v1

如要將執行個體設為區域高可用性執行個體,請按照下列步驟操作:

  1. 檢查執行個體,確認是否已啟用自動備份和二進位檔記錄。高可用性執行個體必須符合這些條件。

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

    • PROJECT_ID:包含執行個體的專案 ID 或專案編號 Google Cloud
    • INSTANCE_NAME:您要設定高可用性的執行個體名稱

    HTTP 方法和網址:

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

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

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

    {
      "kind": "sql#instance",
      "state": "RUNNABLE",
      "databaseVersion": "MYSQL_8_0"
    }
    

    輸出內容應包含與以下類似的區段:

      "backupConfiguration": {
        "kind": "sql#backupConfiguration",
        "startTime": "12:00",
        "enabled": true,
        "binaryLogEnabled": true
        }
      
  2. 如果 enabledbinaryLogEnabled 其中之一為 false,請使用 instances:patch 方法啟用這兩者。如要啟用備份,請將 enabled 設為 true,並將 startTime 設為備份時間的開始值。如要啟用二進位檔記錄,請將 binaryLogEnabled 設為 true

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

    • PROJECT_ID:包含執行個體的專案 ID 或專案編號 Google Cloud
    • INSTANCE_NAME:您要設定高可用性的主要或讀取備用資源執行個體名稱
    • START_TIME:時間 (以小時和分鐘為單位)

    HTTP 方法和網址:

    PATCH https://sqladmin.googleapis.com/v1/projects/PROJECT_ID/instances/INSTANCE_NAME

    JSON 要求主體:

    {
      "settings":
      {
        "backupConfiguration":
        {
          "startTime": "START_TIME",
          "enabled": true,
          "binaryLogEnabled": true
        }
      }
    }
    

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

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

  3. 將執行個體設為區域高可用性執行個體:

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

    • PROJECT_ID:包含執行個體的專案 ID 或專案編號 Google Cloud
    • INSTANCE_NAME:您要設定高可用性的執行個體名稱

    HTTP 方法和網址:

    PATCH https://sqladmin.googleapis.com/v1/projects/PROJECT_ID/instances/INSTANCE_NAME

    JSON 要求主體:

    {
      "settings": {"availabilityType": "REGIONAL" }
    }
    

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

    您應該會收到執行成功的狀態碼 (2xx) 和空白回應。

REST v1beta4

如要將執行個體設為區域高可用性執行個體,請按照下列步驟操作:

  1. 檢查執行個體,確認是否已啟用自動備份和二進位檔記錄。高可用性執行個體必須符合這些條件。

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

    • PROJECT_ID:包含執行個體的專案 ID 或專案編號 Google Cloud
    • INSTANCE_NAME:您要設定高可用性的執行個體名稱

    HTTP 方法和網址:

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

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

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

    {
      "kind": "sql#instance",
      "state": "RUNNABLE",
      "databaseVersion": "MYSQL_8_0"
    }
    

    輸出內容應包含與以下類似的區段:

      "backupConfiguration": {
        "kind": "sql#backupConfiguration",
        "startTime": "12:00",
        "enabled": true,
        "binaryLogEnabled": true
        }
      
  2. 如果 enabledbinaryLogEnabled 其中之一為 false,請使用 instances:patch 方法啟用這兩者。如要啟用備份,請將 enabled 設為 true,並將 startTime 設為備份時間的開始值。如要啟用二進位檔記錄,請將 binaryLogEnabled 設為 true

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

    • PROJECT_ID:包含執行個體的專案 ID 或專案編號 Google Cloud
    • INSTANCE_NAME:您要設定高可用性的主要或讀取備用資源執行個體名稱
    • START_TIME:時間 (以小時和分鐘為單位)

    HTTP 方法和網址:

    PATCH https://sqladmin.googleapis.com/v1beta4/projects/PROJECT_ID/instances/INSTANCE_NAME

    JSON 要求主體:

    {
      "settings":
      {
        "backupConfiguration":
        {
          "startTime": "START_TIME",
          "enabled": true,
          "binaryLogEnabled": true
        }
      }
    }
    

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

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

  3. 將執行個體設為區域高可用性執行個體:

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

    • PROJECT_ID:包含執行個體的專案 ID 或專案編號 Google Cloud
    • INSTANCE_NAME:您要設定高可用性的執行個體名稱

    HTTP 方法和網址:

    PATCH https://sqladmin.googleapis.com/sql/v1beta4/projects/PROJECT_ID/instances/INSTANCE_NAME

    JSON 要求主體:

    {
      "settings": {"availabilityType": "REGIONAL" }
    }
    

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

    您應該會收到執行成功的狀態碼 (2xx) 和空白回應。

啟動容錯移轉

測試容錯移轉是選用功能,但我們建議您執行這項功能,這樣才能瞭解應用程式在發生容錯移轉時的回應方式。

如要進一步瞭解容錯移轉,請參閱容錯移轉總覽

控制台

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

    前往 Cloud SQL 執行個體

  2. 如要開啟執行個體的「總覽」頁面,請按一下執行個體名稱。
  3. 按一下「容錯移轉」
  4. 在「Manually trigger a failover」(手動觸發容錯移轉) 對話方塊的文字欄位中,輸入執行個體的 ID,然後按一下「Trigger Failover」(觸發容錯移轉)

gcloud

啟動容錯移轉:

gcloud sql instances failover PRIMARY_INSTANCE_NAME

REST v1

  1. 描述主要執行個體,以取得 settingsVersion 欄位的值。

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

    • PROJECT_ID:包含執行個體的專案 ID 或專案編號 Google Cloud
    • INSTANCE_NAME:您要設定高可用性的執行個體名稱

    HTTP 方法和網址:

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

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

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

    {
      "kind": "sql#instance",
      "state": "RUNNABLE",
      "databaseVersion": "MYSQL_8_0"
    }
    
  2. 啟動容錯移轉: <0x0

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

    • project-id:專案 ID
    • instance-name:執行個體名稱
    • settings-version:instanceInfo 中的 settingsVersion

    HTTP 方法和網址:

    POST https://sqladmin.googleapis.com/v1/projects/project-id/instances/instance-name/failover

    JSON 要求主體:

    {
      "failoverContext":
         {
            "settingsVersion":"settings-version"
         }
    }
    

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

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

REST v1beta4

  1. 描述主要執行個體,以取得 settingsVersion 欄位的值。

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

    • PROJECT_ID:包含執行個體的專案 ID 或專案編號 Google Cloud
    • INSTANCE_NAME:您要設定高可用性的執行個體名稱

    HTTP 方法和網址:

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

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

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

    {
      "kind": "sql#instance",
      "state": "RUNNABLE",
      "databaseVersion": "MYSQL_8_0"
    }
    
  2. 啟動容錯移轉: <0x0

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

    • project-id:專案 ID
    • instance-name:執行個體名稱
    • settings-version:instanceInfo 中的 settingsVersion

    HTTP 方法和網址:

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

    JSON 要求主體:

    {
      "failoverContext":
         {
            "settingsVersion":"settings-version"
         }
    }
    

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

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

執行個體開始容錯移轉,會有幾分鐘的時間無法提供資料。

驗證執行個體的高可用性設定

如要確認執行個體是否具備高可用性,並查看執行個體執行的區域,請按照下列步驟操作:

控制台

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

    前往 Cloud SQL 執行個體

  2. 如要開啟執行個體的「總覽」頁面,請按一下執行個體名稱。
  3. 確認「Configuration」部分顯示下列高可用性設定:
    • 高可用性 (單一區域)
    • 「位於」會顯示執行個體目前的主要區域。

gcloud

gcloud sql instances describe INSTANCE_NAME

輸出內容會顯示 availabilityTypeREGIONALgceZonesecondaryGceZone 欄位會顯示執行個體目前的主要和次要區域。

REST v1

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

  • PROJECT_ID:包含執行個體的專案 ID 或專案編號 Google Cloud
  • INSTANCE_NAME:您要設定高可用性的執行個體名稱

HTTP 方法和網址:

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

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

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

{
  "kind": "sql#instance",
  "state": "RUNNABLE",
  "databaseVersion": "MYSQL_8_0"
}

輸出內容會顯示 availabilityTypeREGIONALgceZonesecondaryGceZone 欄位會顯示執行個體目前的主要和次要區域。

REST v1beta4

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

  • PROJECT_ID:包含執行個體的專案 ID 或專案編號 Google Cloud
  • INSTANCE_NAME:您要設定高可用性的執行個體名稱

HTTP 方法和網址:

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

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

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

{
  "kind": "sql#instance",
  "state": "RUNNABLE",
  "databaseVersion": "MYSQL_8_0"
}

輸出內容會顯示 availabilityTypeREGIONALgceZonesecondaryGceZone 欄位會顯示執行個體目前的主要和次要區域。

變更高可用性執行個體的可用區

變更現有高可用性執行個體的一或兩個可用區時,執行個體會重新設定,因此會停機幾分鐘。如要查看高可用性執行個體目前執行的主要和次要區域,請參閱驗證執行個體的高可用性設定

如要變更高可用性執行個體的可用區,請按照下列步驟操作:

控制台

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

    前往 Cloud SQL 執行個體

  2. 如要開啟執行個體的「總覽」頁面,請按一下執行個體名稱。
  3. 按一下 [編輯]
  4. 在「Choose region and zonal availability」(選擇區域和可用區供應情形) 專區中,展開「Specify zones」(指定可用區) 並選取新可用區。主要可用區預設為 Any,次要可用區則為 Any (different from primary)。相關限制如下:
    • 您可以只指定主要可用區,也可以同時指定主要和次要可用區。
    • 如果同時指定主要和次要可用區,這兩個可用區不得相同。
  5. 按一下「儲存」

    系統會將您帶回主要執行個體的執行個體頁面,並更新執行個體。

gcloud

變更執行個體執行的區域:

gcloud sql instances patch INSTANCE_NAME \
  --zone=PRIMARY_ZONE --secondary-zone=SECONDARY_ZONE

--secondary-zone 參數為選用參數。如果省略,Cloud SQL 會選取與主要區域不同的可用區。

相關限制如下:

  • 可用區必須是有效的可用區,且與 Cloud SQL 執行個體位於相同區域。
  • 如果指定次要可用區,則必須與主要可用區不同。

REST v1

  1. 變更地區執行個體的可用區:

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

    • PROJECT_ID:專案 ID
    • INSTANCE_NAME:執行個體名稱
    • PRIMARY_ZONE:主要可用區
    • SECONDARY_ZONE:次要區域

    HTTP 方法和網址:

    PATCH https://sqladmin.googleapis.com/v1/projects/PROJECT_ID/instances/INSTANCE_NAME

    JSON 要求主體:

    {
    "settings": {"locationPreference": {"zone": "PRIMARY_ZONE", "secondaryZone": "SECONDARY_ZONE"}}
    }
    

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

    您應該會收到執行成功的狀態碼 (2xx) 和空白回應。

    secondaryZone 參數為選用參數。如果省略,Cloud SQL 會選取與主要區域不同的可用區。

    相關限制如下:

    • 可用區必須是有效可用區。
    • 您選擇的任何可用區都必須與 Cloud SQL 執行個體位於相同區域。

REST v1beta4

  1. 變更地區執行個體的可用區:

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

    • PROJECT_ID:專案 ID
    • INSTANCE_NAME:執行個體名稱
    • PRIMARY_ZONE:主要可用區
    • SECONDARY_ZONE:次要區域

    HTTP 方法和網址:

    PATCH https://sqladmin.googleapis.com/sql/v1beta4/projects/PROJECT_ID/instances/INSTANCE_NAME

    JSON 要求主體:

    {
    "settings": {"locationPreference": {"zone": "PRIMARY_ZONE", "secondaryZone": "SECONDARY_ZONE"}}
    }
    

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

    您應該會收到執行成功的狀態碼 (2xx) 和空白回應。

    secondaryZone 參數為選用參數。如果省略,Cloud SQL 會選取與主要區域不同的可用區。

    相關限制如下:

    • 可用區必須是有效可用區。
    • 您選擇的任何可用區都必須與 Cloud SQL 執行個體位於相同區域。

停用執行個體的高可用性

如要停用 Cloud SQL 執行個體的高可用性,請使用 Google Cloud 控制台、gcloud CLI 或 API。

如果停用執行個體的高可用性,一旦發生區域服務中斷,您就必須手動復原執行個體。詳情請參閱「獨立執行個體的復原選項」。

控制台

如要停用執行個體的高可用性,請按照下列步驟操作:

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

    前往 Cloud SQL 執行個體

  2. 如要開啟執行個體的「總覽」頁面,請按一下執行個體名稱。
  3. 按一下 [編輯]
  4. 開啟「自動備份」
  5. 在「可用性」部分中,按一下「單一可用區」
  6. 按一下 [儲存]。這項編輯需要重新啟動執行個體後才會生效。
  7. 對話方塊出現時,請按一下「儲存並重新啟動」

gcloud

如要停用執行個體的高可用性,請使用 gcloud sql instances patch 指令:

gcloud sql instances patch INSTANCE_NAME \
--availability-type ZONAL

INSTANCE_NAME 改成要停用高可用性的 Cloud SQL 執行個體名稱。

REST v1

如要將執行個體的可用性類型變更為 ZONAL,請使用 instances:patch 方法。這個方法會停用執行個體的高可用性。

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

  • PROJECT_ID:包含執行個體的專案 ID 或專案編號 Google Cloud
  • INSTANCE_NAME:要停用高可用性的執行個體名稱

HTTP 方法和網址:

PATCH https://sqladmin.googleapis.com/v1/projects/PROJECT_ID/instances/INSTANCE_NAME

JSON 要求主體:

{
  "settings": {"availabilityType": "ZONAL" }
}

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

您應該會收到執行成功的狀態碼 (2xx) 和空白回應。

REST v1beta4

如要將執行個體的可用性類型變更為 ZONAL,請使用 instances:patch 方法。這個方法會停用執行個體的高可用性。

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

  • PROJECT_ID:包含執行個體的專案 ID 或專案編號 Google Cloud
  • INSTANCE_NAME:要停用高可用性的執行個體名稱

HTTP 方法和網址:

PATCH https://sqladmin.googleapis.com/sql/v1beta4/projects/PROJECT_ID/instances/INSTANCE_NAME

JSON 要求主體:

{
  "settings": {"availabilityType": "ZONAL" }
}

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

您應該會收到執行成功的狀態碼 (2xx) 和空白回應。

疑難排解

問題 疑難排解
找不到手動容錯移轉的指標。 只有自動容錯移轉會納入指標。
Cloud SQL 執行個體資源 (CPU 和 RAM) 的使用率接近 100%,導致高可用性執行個體停止運作。 執行個體機器大小過小,無法處理負載。

編輯執行個體,升級至較大的機器大小,取得更多 CPU 和記憶體。

後續步驟