本頁說明如何編輯現有的 Cloud SQL 執行個體。
建立執行個體後,您可以在執行個體執行時編輯執行個體,變更其設定。如要瞭解執行個體設定,以及變更設定對執行個體的影響,請參閱「執行個體設定」。
」編輯執行個體
大多數編輯作業只能在執行個體執行時套用。
控制台
-
前往 Google Cloud 控制台的「Cloud SQL Instances」頁面。
- 如要開啟執行個體的「總覽」頁面,請按一下執行個體名稱。
- 按一下 [編輯]。
- 在「自訂執行個體」部分,如果出現「顯示設定選項」選單,請點選該選單。
更新執行個體的可編輯設定。
進一步瞭解執行個體設定。
- 按一下 [儲存]。
gcloud
這項指令會修改備份開始時間。
gcloud sql instances patch INSTANCE_NAME \ --backup-start-time 16:00
這項指令可讓 BigQuery 等其他服務存取 Cloud SQL 中的資料,並透過內部連線查詢這些資料。 Google Cloud
gcloud sql instances patch INSTANCE_NAME \ --enable-google-private-path
這個指令可更新 Cloud SQL 執行個體,以便與 Vertex AI 整合。透過這項整合功能,您可以將 Vertex AI 中託管的大型語言模型 (LLM) 套用至 PostgreSQL 適用的 Cloud SQL 資料庫。
gcloud sql instances patch INSTANCE_NAME \ --enable-google-ml-integration \ --database-flags cloudsql.enable_google_ml_integration=on
如果修補程式修改的值需要重新啟動,系統會提示您繼續變更或取消。
如要進一步瞭解執行個體設定標記,請參閱 gcloud sql instances patch。
REST v1
使用這項指令,您可以完成下列動作:
- 修改執行個體,以便與 Vertex AI 整合。整合後,您就能將託管於 Vertex AI 的大型語言模型 (LLM) 套用至 PostgreSQL 適用的 Cloud SQL 資料庫。
- 修改備份開始時間。
- 允許 BigQuery 等其他服務透過內部連線存取 Cloud SQL 中的資料,並對這些資料執行查詢。 Google Cloud
使用任何要求資料之前,請先替換以下項目:
- PROJECT_ID:專案 ID
- INSTANCE_ID:執行個體 ID
- PRIVATE_NETWORK:您要新增或選取的網路,用於建立私人連線
HTTP 方法和網址:
PATCH https://sqladmin.googleapis.com/v1/projects/PROJECT_ID/instances/INSTANCE_ID
JSON 要求主體:
{ "settings": { "enableGoogleMlIntegration": true, "databaseFlags": [ { "name": "cloudsql.enable_google_ml_integration", "value": "on" } ] "backupConfiguration": { "startTime": "16:00", "enabled": true, "binaryLogEnabled": true } } "ipConfiguration": { "privateNetwork": "PRIVATE_NETWORK", "authorizedNetworks": [], "ipv4Enabled": false, "enablePrivatePathForGoogleCloudServices": true } }
如要傳送要求,請展開以下其中一個選項:
您應該會收到如下的 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
使用這項指令,您可以完成下列動作:
- 修改執行個體,以便與 Vertex AI 整合。整合後,您就能將託管於 Vertex AI 的大型語言模型 (LLM) 套用至 PostgreSQL 適用的 Cloud SQL 資料庫。
- 修改備份開始時間。
- 允許 BigQuery 等其他服務透過內部連線存取 Cloud SQL 中的資料,並對這些資料執行查詢。 Google Cloud
使用任何要求資料之前,請先替換以下項目:
- PROJECT_ID:專案 ID
- INSTANCE_ID:執行個體 ID
- PRIVATE_NETWORK:您要新增或選取的網路,用於建立私人連線
HTTP 方法和網址:
PATCH https://sqladmin.googleapis.com/sql/v1beta4/projects/PROJECT_ID/instances/INSTANCE_ID
JSON 要求主體:
{ "settings": { "enableGoogleMlIntegration": true, "databaseFlags": [ { "name": "cloudsql.enable_google_ml_integration", "value": "on" } ] "backupConfiguration": { "startTime": "16:00", "enabled": true, "binaryLogEnabled": true } } "ipConfiguration": { "privateNetwork": "PRIVATE_NETWORK", "authorizedNetworks": [], "ipv4Enabled": false, "enablePrivatePathForGoogleCloudServices": true } }
如要傳送要求,請展開以下其中一個選項:
您應該會收到如下的 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。
在下列範例中,兩個專案 (98765
和 87654
) 可透過 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 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
標記。這個標記可確保系統不會意外允許任何專案。
編輯執行個體的自訂 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" }