編輯執行個體

本頁說明如何編輯現有的 Cloud SQL 執行個體。

建立執行個體後,您可以在執行個體執行時編輯執行個體,變更其設定。如要瞭解執行個體設定,以及變更設定對執行個體的影響,請參閱「執行個體設定」。

您可以將 SQL Server 適用的 Cloud SQL 與 Managed Service for Microsoft Active Directory (代管的 Microsoft AD) 整合。這項整合功能包括在每個執行個體層級加入及離開 Managed Microsoft AD 網域的功能。詳情請參閱「 Cloud SQL 中的代管 Microsoft AD 總覽」。

您也可以啟用或停用資料庫稽核功能。

編輯執行個體

大多數編輯作業只能在執行個體執行時套用。

控制台

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

    前往 Cloud SQL 執行個體

  2. 如要開啟執行個體的「總覽」頁面,請按一下執行個體名稱。
  3. 按一下 [編輯]
  4. 在「自訂執行個體」部分,如果出現「顯示設定選項」選單,請點選該選單。
  5. 更新執行個體的可編輯設定。

    進一步瞭解執行個體設定

  6. 按一下 [儲存]

gcloud

這項指令會修改備份開始時間。

gcloud sql instances patch INSTANCE_NAME \
--backup-start-time 16:00

如果修補程式修改的值需要重新啟動,系統會提示您繼續變更或取消。

如要進一步瞭解執行個體設定標記,請參閱 gcloud sql instances patch

REST v1

使用這項指令即可修改備份開始時間。

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

  • PROJECT_ID:專案 ID
  • INSTANCE_ID:執行個體 ID
  • PRIVATE_NETWORK:您要新增或選取的網路,用於建立私人連線

HTTP 方法和網址:

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

JSON 要求主體:

{
  "settings": {
    "backupConfiguration": {
      "startTime": "16:00",
      "enabled": true,
      "binaryLogEnabled": true
    }
  }
    "ipConfiguration": {
      "privateNetwork": "PRIVATE_NETWORK",
      "authorizedNetworks": [],
      "ipv4Enabled": false,
    }
}

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

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

{
  "kind": "sql#operation",
  "targetLink": "https://sqladmin.googleapis.com/v1/projects/PROJECT_ID/instances/INSTANCE_ID",
  "status": "PENDING",
  "user": "user@example.com",
  "insertTime": "2020-01-16T02:32:12.281Z",
  "operationType": "UPDATE",
  "name": "OPERATION_ID",
  "targetId": "INSTANCE_ID",
  "selfLink": "https://sqladmin.googleapis.com/v1/projects/PROJECT_ID/operations/OPERATION_ID",
  "targetProject": "PROJECT_ID"
}

如果修補程式修改的值需要重新啟動,系統會提示您繼續變更或取消。

如要瞭解如何建立該工作的基礎 REST API 要求,請參閱 instances:patch 頁面中的 APIs Explorer

REST v1beta4

使用這項指令即可修改備份開始時間。

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

  • PROJECT_ID:專案 ID
  • INSTANCE_ID:執行個體 ID
  • PRIVATE_NETWORK:您要新增或選取的網路,用於建立私人連線

HTTP 方法和網址:

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

JSON 要求主體:

{
  "settings": {
    "backupConfiguration": {
      "startTime": "16:00",
      "enabled": true,
      "binaryLogEnabled": true
    }
  }
    "ipConfiguration": {
      "privateNetwork": "PRIVATE_NETWORK",
      "authorizedNetworks": [],
      "ipv4Enabled": false,
    }
}

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

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

{
  "kind": "sql#operation",
  "targetLink": "https://sqladmin.googleapis.com/sql/v1beta4/projects/PROJECT_ID/instances/INSTANCE_ID",
  "status": "PENDING",
  "user": "user@example.com",
  "insertTime": "2020-01-16T02:32:12.281Z",
  "operationType": "UPDATE",
  "name": "OPERATION_ID",
  "targetId": "INSTANCE_ID",
  "selfLink": "https://sqladmin.googleapis.com/sql/v1beta4/projects/PROJECT_ID/operations/OPERATION_ID",
  "targetProject": "PROJECT_ID"
}

如果修補程式修改的值需要重新啟動,系統會提示您繼續變更或取消。

如要瞭解如何建立該工作的基礎 REST API 要求,請參閱 instances:patch 頁面中的 APIs Explorer

編輯已啟用 Private Service Connect 的執行個體

如要更新已啟用 Private Service Connect 的執行個體,請使用 gcloud CLI 或 API。舉例來說,您可以更新與執行個體相關聯的專案,以達到下列目的:

  • 允許從 Private Service Connect 端點連線至 Cloud SQL 執行個體。
  • 如要從允許的專案清單中移除專案,移除專案後,現有 Private Service Connect 端點的連線仍可運作,但系統不會接受新的端點。

gcloud

如要更新可使用 Private Service Connect 的專案,請使用 gcloud sql instances patch 指令:

gcloud sql instances patch INSTANCE_NAME \
--project=PROJECT_ID \
--allowed-psc-projects=ALLOWED_PROJECTS

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

  • INSTANCE_NAME:虛擬私有雲網路中的 Private Service Connect 端點可連線的 Cloud SQL 執行個體名稱。
  • PROJECT_ID:專案的 ID 或專案編號,該專案包含虛擬私有雲網路中 Private Service Connect 端點可連線的執行個體。 Google Cloud
  • ALLOWED_PROJECTS:以半形逗號分隔的允許專案 ID 或編號清單。這些專案會覆寫已設為使用 Private Service Connect 的專案。如果專案不在這個清單中,您就無法使用該專案建立執行個體,也無法為該執行個體啟用 Private Service Connect。

在下列範例中,兩個專案 (9876587654) 可透過 Private Service Connect 端點連線至 12345 專案中的 myinstance Cloud SQL 執行個體:

gcloud sql instances patch myinstance \
--project=12345 \
--allowed-psc-projects='98765','87654'

如要移除所有允許的專案,請使用 gcloud sql instances patch 指令和
--clear-allowed-psc-projects 標記:

gcloud sql instances patch INSTANCE_NAME \
--project=PROJECT_ID \
--clear-allowed-psc-projects

這個標記可確保系統不會意外允許任何專案。

REST v1

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

  • PROJECT_ID:專案的 ID 或專案編號,該專案包含虛擬私有雲網路中 Private Service Connect 端點可連線的執行個體。 Google Cloud
  • INSTANCE_NAME:虛擬私有雲網路中的 Private Service Connect 端點可連線的 Cloud SQL 執行個體名稱。
  • ALLOWED_PROJECTS:以半形逗號分隔的允許專案 ID 或編號清單。這些專案會覆寫已設為使用 Private Service Connect 的專案。如果專案不在這個清單中,您就無法使用該專案建立執行個體,也無法為該執行個體啟用 Private Service Connect。

HTTP 方法和網址:

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

JSON 要求主體:

{
  "kind": "sql#instance",
  "name": "INSTANCE_NAME",
  "project": "PROJECT_ID",
  "settings": {
    "ipConfiguration": {
      "pscConfig": {
        "allowedConsumerProjects": [ALLOWED_PROJECTS]
      }
    },
    "kind": "sql#settings"
  }
}

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

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

{
  "kind": "sql#operation",
  "targetLink": "https://sqladmin.googleapis.com/v1/projects/PROJECT_ID/instances/INSTANCE_NAME",
  "status": "PENDING",
  "user": "user@example.com",
  "insertTime": "2020-01-16T02:32:12.281Z",
  "operationType": "UPDATE",
  "name": "OPERATION_ID",
  "targetId": "INSTANCE_NAME",
  "selfLink": "https://sqladmin.googleapis.com/v1/projects/PROJECT_ID/operations/OPERATION_ID",
  "targetProject": "PROJECT_ID"
}

如要移除所有允許的專案,請使用 clear-allowed-psc-projects 標記。這個標記可確保系統不會意外允許任何專案。

如要瞭解如何建立該工作的基礎 REST API 要求,請參閱 instances:patch 頁面中的 APIs Explorer

REST v1beta4

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

  • PROJECT_ID:專案的 ID 或專案編號,該專案包含虛擬私有雲網路中 Private Service Connect 端點可連線的執行個體。 Google Cloud
  • INSTANCE_NAME:虛擬私有雲網路中的 Private Service Connect 端點可連線的 Cloud SQL 執行個體名稱。
  • ALLOWED_PROJECTS:以半形逗號分隔的允許專案 ID 或編號清單。這些專案會覆寫已設為使用 Private Service Connect 的專案。如果專案不在這個清單中,您就無法使用該專案建立執行個體,也無法為該執行個體啟用 Private Service Connect。

HTTP 方法和網址:

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

JSON 要求主體:

{
  "kind": "sql#instance",
  "name": "INSTANCE_NAME",
  "project": "PROJECT_ID",
  "settings": {
    "ipConfiguration": {
      "pscConfig": {
        "allowedConsumerProjects": [ALLOWED_PROJECTS]
      }
    },
    "kind": "sql#settings"
  }
}

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

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

{
  "kind": "sql#operation",
  "targetLink": "https://sqladmin.googleapis.com/sql/v1beta4/projects/PROJECT_ID/instances/INSTANCE_NAME",
  "status": "PENDING",
  "user": "user@example.com",
  "insertTime": "2020-01-16T02:32:12.281Z",
  "operationType": "UPDATE",
  "name": "OPERATION_ID",
  "targetId": "INSTANCE_NAME",
  "selfLink": "https://sqladmin.googleapis.com/sql/v1beta4/projects/PROJECT_ID/operations/OPERATION_ID",
  "targetProject": "PROJECT_ID"
}

如要移除所有允許的專案,請使用 clear-allowed-psc-projects 標記。這個標記可確保系統不會意外允許任何專案。

如要瞭解如何建立該工作的基礎 REST API 要求,請參閱 instances:patch 頁面中的 APIs Explorer

編輯執行個體的自訂 SAN

如要使用自訂 DNS 名稱連線至 Cloud SQL 執行個體,而非使用 IP 位址,請在建立執行個體時設定自訂主體別名 (SAN)。您插入自訂 SAN 設定的自訂 DNS 名稱,會新增至執行個體伺服器憑證的 SAN 欄位。這樣一來,您就能安全地使用自訂 DNS 名稱進行主機名稱驗證。

您可以對執行個體的伺服器憑證執行下列作業:

  • 將 DNS 名稱新增至執行個體:在自訂 SAN 設定中,新增以半形逗號分隔的清單,最多可包含三個自訂 DNS 名稱。Cloud SQL 會將這些名稱新增至伺服器憑證的 SAN 欄位。您可以使用單一憑證保護多個 DNS 名稱。
  • 修改執行個體的 DNS 名稱:變更要新增至執行個體伺服器憑證 SAN 欄位的自訂 DNS 名稱。
  • 從執行個體中移除 DNS 名稱:從執行個體伺服器憑證的 SAN 欄位中移除所有自訂 DNS 名稱。

您可以使用 gcloud CLI 或 API,編輯執行個體的自訂 SAN。

gcloud

如要編輯執行個體的自訂 SAN,請使用 gcloud beta sql instances patch 指令:

gcloud beta sql instances patch INSTANCE_NAME \
--project=PROJECT_ID \
--custom-subject-alternative-names=DNS_NAMES

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

  • INSTANCE_NAME:Cloud SQL 執行個體的名稱,該執行個體具有要新增、修改或移除 DNS 名稱的伺服器憑證
  • PROJECT_ID:包含執行個體的專案 ID 或專案編號 Google Cloud
  • DNS_NAMES:以逗號分隔的清單,最多包含三個 DNS 名稱,您要將這些名稱新增至執行個體的伺服器憑證。

如要從 Cloud SQL 執行個體的伺服器憑證中移除所有 DNS 名稱,請使用 gcloud beta sql instances patch 指令和
--clear-custom-subject-alternative-names 標記:

gcloud beta sql instances patch INSTANCE_NAME \
--project=PROJECT_ID \
--clear-custom-subject-alternative-names

這個標記可確保不會在憑證中意外新增 DNS 名稱。

REST

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

  • PROJECT_ID:專案的 ID 或專案編號。 Google Cloud 這個專案含有 Cloud SQL 執行個體,其伺服器憑證的 DNS 名稱正在新增、修改或移除。
  • INSTANCE_NAME:執行個體的名稱。
  • DNS_NAMES:以逗號分隔的清單,最多包含三個 DNS 名稱,您要將這些名稱新增至執行個體的伺服器憑證。

    如果您已將 DNS 名稱新增至憑證,並使用這個參數指定其他 DNS 名稱,Cloud SQL 會從憑證中移除原始 DNS 名稱。

    如果沒有為 customSubjectAlternativeNames 參數指定任何 DNS 名稱,但提供空值 [],Cloud SQL 會從執行個體的伺服器憑證中移除所有 DNS 名稱。這樣可確保不會在憑證中意外新增 DNS 名稱。

HTTP 方法和網址:

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

JSON 要求主體:

{
  "kind": "sql#instance",
  "name": "INSTANCE_NAME",
  "project": "PROJECT_ID",
  "settings": {
    "ipConfiguration": {
      "customSubjectAlternativeNames": "DNS_NAMES"
    },
    "kind": "sql#settings"
  }
}

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

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

{
  "kind": "sql#operation",
  "targetLink": "https://sqladmin.googleapis.com/sql/v1beta4/projects/PROJECT_ID/instances/INSTANCE_NAME",
  "status": "PENDING",
  "user": "user@example.com",
  "insertTime": "2020-01-16T02:32:12.281Z",
  "operationType": "UPDATE",
  "name": "OPERATION_ID",
  "targetId": "INSTANCE_NAME",
  "selfLink": "https://sqladmin.googleapis.com/sql/v1beta4/projects/PROJECT_ID/operations/OPERATION_ID",
  "targetProject": "PROJECT_ID"
}
如要瞭解如何建立該工作的基礎 REST API 要求,請參閱 instances:patch 頁面中的 APIs Explorer