本頁面說明如何建立 SQL Server 適用的 Cloud SQL 執行個體。
如需所有執行個體設定的詳細資訊,請參閱「執行個體設定」。
新建立的執行個體會包含 sqlserver
資料庫。
建立 Cloud SQL for SQL Server 執行個體後,您可以建立或匯入資料庫。
單一專案可擁有的執行個體數量上限取決於這些執行個體的網路架構:
- 全新 SQL 網路架構:每個專案最多可有 1000 個執行個體。
- 舊版 SQL 網路架構:每個專案最多可有 100 個執行個體。
- 同時使用兩種架構:視執行個體在兩種架構中的分布情形而定,限制介於 100 到 1000 之間。
如需提高上限,請提交客服案件。唯讀備用資源會計為執行個體。
選擇 Cloud SQL Enterprise Plus 版或 Cloud SQL Enterprise 版
建立 Cloud SQL for SQL Server 執行個體時,您可以從多個不同的機器系列中選擇機器設定,具體取決於 Cloud SQL 版本。
Cloud SQL Enterprise Plus 版提供下列兩種機器系列:
- 效能最佳化:提供各種 SQL Server 工作負載的平衡價格效能,記憶體與運算比率為 1 個 vCPU:8 GB RAM。
- 記憶體最佳化:提供高記憶體/運算比率,適用於記憶體密集型工作負載,比例為 1 個 vCPU:32 GB RAM。記憶體最佳化機器非常適合用於需要複雜查詢、分析和商業智慧報表的 SQL Server 工作負載,因為在資料處理期間,將較大的資料集儲存在記憶體中,有助於提升效能。
Cloud SQL Enterprise 版提供多種機器設定,可根據 vCPU 和記憶體需求選擇。以下各節顯示每個資料庫版本和機器類型的 vCPU 和記憶體設定:
SQL Server 2017 Express、SQL Server 2019 Express 和 SQL Server 2022 Express
機型 | vCPU/記憶體 |
---|---|
不適用 |
|
自訂 | 1 到 8 個 vCPU,3.75 GB 到 52 GB |
SQL Server 2017 Web、SQL Server 2019 Web 和 SQL Server 2022 Web
機型 | vCPU/記憶體 |
---|---|
不適用 |
|
自訂 | 1 到 32 個 vCPU,3.75 GB 到 208 GB |
SQL Server 2017 Standard、SQL Server 2019 Standard 和 SQL Server 2022 Standard
機型 | vCPU/記憶體 |
---|---|
不適用 |
|
自訂 | 1 到 48 個 vCPU,3.75 GB 到 312 GB |
SQL Server 2017 Enterprise、SQL Server 2019 Enterprise 和 SQL Server 2022 Enterprise
機型 | vCPU/記憶體 |
---|---|
不適用 |
|
自訂 | 2 到 96 個 vCPU,3.75 GB 到 624 GB |
效能最佳化 (僅限 Cloud SQL Enterprise Plus) |
|
記憶體最佳化 (僅限 Cloud SQL Enterprise Plus) |
|
多執行緒並行
在 Cloud SQL for SQL Server 上使用多執行緒並行 (SMT) 功能,即可在一個實體核心上,以個別獨立執行緒的形式執行兩個虛擬 CPU (vCPU)。SMT 預設為啟用,但您可以停用,這樣或許能降低授權費用。
停用 SMT 可能會影響執行個體效能。 如要瞭解停用 SMT 對執行個體效能的影響,建議您對執行個體執行負載測試。
事前準備
- Sign in to your Google Cloud account. If you're new to Google Cloud, create an account to evaluate how our products perform in real-world scenarios. New customers also get $300 in free credits to run, test, and deploy workloads.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
-
Make sure that billing is enabled for your Google Cloud project.
-
Install the gcloud CLI.
-
If you're using an external identity provider (IdP), you must first sign in to the gcloud CLI with your federated identity.
-
To initialize the gcloud CLI, run the following command:
gcloud init
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
-
Make sure that billing is enabled for your Google Cloud project.
-
Install the gcloud CLI.
-
If you're using an external identity provider (IdP), you must first sign in to the gcloud CLI with your federated identity.
-
To initialize the gcloud CLI, run the following command:
gcloud init
-
請確認使用者帳戶具備 Cloud SQL 管理員和 Compute 檢視者角色。
進一步瞭解角色和權限。
-
前往 Google Cloud 控制台的「Cloud SQL Instances」頁面。
- 點選「建立執行個體」。
- 在「建立執行個體」頁面的「選擇資料庫引擎」面板中,按一下「選擇 SQL Server」。
在「建立 SQL Server 執行個體」頁面的「選擇 Cloud SQL 版本」部分,為執行個體選取 Cloud SQL 版本:
Enterprise
或Enterprise Plus
。如要進一步瞭解 Cloud SQL 版本,請參閱Cloud SQL 版本簡介。
- 選取執行個體的版本預設設定。如要查看可用的預設集,請按一下「版本預設集」選單。
- 在「執行個體資訊」部分,選取執行個體的資料庫版本。如要查看可用版本,請按一下「資料庫版本」選單。
- 在「Instance info」(執行個體資訊) 窗格的「Instance ID」(執行個體 ID) 欄位中,輸入執行個體的 ID。
您不需要在執行個體名稱中包含專案 ID,系統會在適當地方 (例如在記錄檔中) 自動加入。
- 在「Password」(密碼) 欄位中輸入使用者的密碼。
- 在「Choose region and zonal availability」(選擇區域和可用區供應情形) 專區中,選取執行個體的區域和可用區。區域可用性可能因 Cloud SQL for SQL Server 版本而異。詳情請參閱「關於執行個體設定」。
您的執行個體必須與要存取該執行個體的資源位於相同地區。選取的區域日後無法修改。在大多數情況下,您不需要指定區域。
如果為執行個體設定高可用性,可以同時選取主要和次要可用區。
在建立執行個體時使用次要可用區,須符合下列條件:
- 主要可用區預設為
Any
,次要可用區則為Any (different from primary)
。 - 如果同時指定主要和次要可用區,兩者必須是不同的可用區。
- 主要可用區預設為
- 在「自訂執行個體」部分,更新執行個體的設定。
首先,請按一下「顯示設定選項」,顯示設定群組。然後展開要查看及自訂設定的群組。
右側會顯示您所選所有選項的摘要。
您可以選擇是否自訂這些執行個體設定。如果沒有進行任何自訂作業,系統一律會指派預設值。
下表列出執行個體設定,方便您快速參考。如要進一步瞭解各項設定,請參閱執行個體設定頁面。
設定 附註 機器類型 機型 選取「輕量」、「標準」(最常見) 或「高記憶體」。每個機器類型會根據執行個體的 CPU (核心) 數量和記憶體大小進行分類。 核心 執行個體的 vCPU 數量。 瞭解詳情。 記憶體 執行個體的記憶體量,以 GB 為單位。瞭解詳情。 自訂 如果是專屬核心機型,請選取「自訂」按鈕,建立具有自訂設定的執行個體,而非選取預先定義的設定。選取這個選項時,您需要為執行個體選取核心數量和記憶體大小。瞭解詳情。 儲存空間 儲存空間類型 判斷執行個體使用的是 SSD 還是 HDD 儲存空間。 瞭解詳情。 儲存空間容量 為執行個體佈建的儲存空間量。 瞭解詳情。 啟用自動增加儲存空間 決定 Cloud SQL 是否要在執行個體可用空間不足時,自動提供更多儲存空間。瞭解詳情。 加密 Google 管理的加密金鑰 預設選項。 客戶管理的加密金鑰 (CMEK) 選取要搭配 Google Cloud Key Management Service 使用的金鑰。瞭解詳情。 連線 私人 IP 為執行個體新增私人 IP 位址。如要啟用連線至執行個體的功能, 必須進行額外設定。
您可以選擇指定執行個體用於連線的分配 IP 範圍。- 展開「顯示分配的 IP 範圍選項」。
- 從下拉式選單中選取 IP 範圍。
執行個體可以同時擁有公開和私人 IP 位址。
- 進一步瞭解如何使用私人 IP。
- 進一步瞭解已分配的 IP 位址範圍。
公開 IP 為執行個體新增公開 IP 位址。然後新增授權網路,連線至執行個體。 執行個體可以同時擁有公開和私人 IP 位址。
進一步瞭解如何使用公開 IP。
已授權網路 新增新網路的名稱和網路位址。 瞭解詳情。
安全性 伺服器憑證授權單位模式 針對這個 Cloud SQL 執行個體,選取簽署伺服器憑證的憑證授權單位 (CA) 類型。瞭解詳情。
根據預設,在 Google Cloud 控制台中建立執行個體時,執行個體會使用Google 管理的內部憑證授權單位 (
GOOGLE_MANAGED_INTERNAL_CA
),這是每個執行個體的 CA 選項。資料保護 自動備份 您希望備份開始的時間範圍。 選擇要儲存備份的位置 多數用途均建議選取「多區域」。如需將備份資料儲存在特定區域 (例如基於法規原因),請選取「區域」,然後從「位置」下拉式選單中選取所需區域。 選擇要儲存的自動備份量 要保留的自動備份數量 (1 到 365 天)。瞭解詳情。 啟用時間點復原 啟用時間點復原和交易記錄。 瞭解詳情。 啟用防刪除功能 決定是否要防止意外刪除執行個體。 瞭解詳情。 啟用刪除執行個體後保留備份功能 決定是否要在刪除執行個體後保留自動和隨選備份。 瞭解詳情。 選擇要保留記錄檔的天數 將預先寫入記錄檔保留期限設為 1 到 7 天。預設為 7 天。 瞭解詳情。 維護 偏好的維護期間 決定 Cloud SQL 可對執行個體執行中斷型維修的 1 小時期間。如未設定維護期間,系統可能會隨時執行會導致作業中斷的維護作業。瞭解詳情。 更新順序 相較於同專案中的其他執行個體,您偏好的執行個體更新時間。瞭解詳情。 旗標 新增旗標 您可以使用資料庫標記來控管執行個體的設定和參數。瞭解詳情。 標籤 新增標籤 為新增的每個標籤加入鍵和值。您可以使用標籤整理執行個體。 - 按一下「建立執行個體」。
注意:建立執行個體可能需要幾分鐘。不過,您可以在建立執行個體時查看執行個體的相關資訊。
- 使用
gcloud sql instances create
指令建立執行個體: - 可用區必須是有效可用區。
- 如果指定次要可用區,也必須指定主要可用區。
- 如果指定主要和次要可用區,兩者必須是不同的可用區。
- 如果指定主要和次要可用區,兩者必須位於同一區域。
GOOGLE_MANAGED_INTERNAL_CA
:這是預設值。 選用這個選項後,每個 Cloud SQL 執行個體專用的內部 CA,會簽署該執行個體的伺服器憑證。GOOGLE_MANAGED_CAS_CA
: 使用這個選項時,系統會採用 CA 階層,其中包含根 CA 和由 Cloud SQL 管理並託管於 Google Cloud 憑證授權單位服務 (CA 服務) 的下層伺服器 CA。 區域中的從屬伺服器 CA 會簽署伺服器憑證,並在區域中的執行個體之間共用。CUSTOMER_MANAGED_CAS_CA
: 使用這個選項,您可以定義 CA 層級,並管理 CA 憑證的輪替。在執行個體所在的相同區域中,於 CA 服務中建立 CA 集區。集區中的其中一個 CA 會用於簽署伺服器憑證。 詳情請參閱「使用客戶代管的 CA」。- 可用區必須是有效可用區。
- 如果指定次要可用區,也必須指定主要可用區。
- 記下系統自動指派的 IP 位址。
如果您未使用 Cloud SQL Auth Proxy,應用程式或工具會使用這個位址做為連線至執行個體的主機位址。
- 設定使用者密碼:
gcloud sql users set-password sqlserver no-host --instance=[INSTANCE_NAME] \ --password=[PASSWORD]
- 啟動 Cloud Shell。
-
設定要套用 Terraform 設定的預設 Google Cloud 專案。
每項專案只需要執行一次這個指令,且可以在任何目錄中執行。
export GOOGLE_CLOUD_PROJECT=PROJECT_ID
如果您在 Terraform 設定檔中設定明確值,環境變數就會遭到覆寫。
-
在 Cloud Shell 中建立目錄,並在該目錄中建立新檔案。檔案名稱的副檔名必須是
.tf
,例如main.tf
。在本教學課程中,這個檔案稱為main.tf
。mkdir DIRECTORY && cd DIRECTORY && touch main.tf
-
如果您正在學習教學課程,可以複製每個章節或步驟中的範例程式碼。
將範例程式碼複製到新建立的
main.tf
。視需要從 GitHub 複製程式碼。如果 Terraform 程式碼片段是端對端解決方案的一部分,建議您使用這個方法。
- 查看並修改範例參數,套用至您的環境。
- 儲存變更。
-
初始化 Terraform。每個目錄只需執行一次這項操作。
terraform init
如要使用最新版 Google 供應商,請加入
-upgrade
選項:terraform init -upgrade
-
檢查設定,確認 Terraform 即將建立或更新的資源符合您的預期:
terraform plan
視需要修正設定。
-
執行下列指令,並在提示中輸入
yes
,即可套用 Terraform 設定:terraform apply
等待 Terraform 顯示「Apply complete!」訊息。
- 開啟 Google Cloud 專案即可查看結果。在 Google Cloud 控制台中,前往 UI 中的資源,確認 Terraform 已建立或更新這些資源。
- 如要停用防刪除功能,請在 Terraform 設定檔中將
deletion_protection
引數設為false
。deletion_protection = "false"
- 執行下列指令,並在提示中輸入
yes
,套用更新的 Terraform 設定:terraform apply
-
執行下列指令,並在提示中輸入
yes
,移除先前透過 Terraform 設定套用的資源:terraform destroy
- PROJECT_ID:您的專案 ID。
- INSTANCE_ID:執行個體 ID。
- REGION:區域名稱。
- DATABASE_VERSION:資料庫版本的列舉字串。例如:
SQLSERVER_2017_STANDARD
。 - PASSWORD:
root
使用者的密碼。 - MACHINE_TYPE:機器的列舉字串 (層級) 類型。例如:
db-perf-optimized-N-4
。 - EDITION_TYPE:您的 Cloud SQL 版本。預設值為
ENTERPRISE
。 - DATA_CACHE_ENABLED:(選用) 如要為執行個體啟用資料快取,請將這個參數的值設為
true
。 - PRIVATE_NETWORK:指定要用於這個執行個體的虛擬私有雲 (VPC) 網路名稱。必須已針對網路設定私人服務存取權。
- AUTHORIZED_NETWORKS:如果是公用 IP 連線,請指定可連線至執行個體的授權網路連線。
- CA_MODE:為執行個體指定憑證授權單位階層,可以是
GOOGLE_MANAGED_INTERNAL_CA
或GOOGLE_MANAGED_CAS_CA
。如未指定serverCaMode
,則預設設定為GOOGLE_MANAGED_INTERNAL_CA
。 這項功能目前為預先發布版。 - DNS_NAMES:在 Cloud SQL 執行個體的伺服器憑證中,以半形逗號分隔,最多新增三個 DNS 名稱。您可以使用單一憑證保護多個 DNS 名稱。這項功能僅適用於預先發布版,且僅適用於
CUSTOMER_MANAGED_CAS_CA
執行個體。 - PROJECT_ID:您的專案 ID
- INSTANCE_ID:您在上一步驟中建立的執行個體 ID
- PROJECT_ID:您的專案 ID。
- INSTANCE_ID:執行個體 ID。
- REGION:區域名稱。
- DATABASE_VERSION:資料庫版本的列舉字串。
- MACHINE_TYPE:機器的列舉字串 (層級) 類型。例如:
db-perf-optimized-N-4
。 - PASSWORD:
root
使用者的密碼。 - MACHINE_TYPE:機器 (層級) 類型的列舉字串,如下所示:
db-custom-[CPUS]-[MEMORY_MBS]
。 - EDITION_TYPE:您的 Cloud SQL 版本。預設值為
ENTERPRISE
。 - DATA_CACHE_ENABLED:(選用) 如要為執行個體啟用資料快取,請將這個參數的值設為
true
。 - PRIVATE_NETWORK:指定要用於這個執行個體的虛擬私有雲 (VPC) 網路名稱。必須已針對網路設定私人服務存取權。
- AUTHORIZED_NETWORKS:如果是公用 IP 連線,請指定可連線至執行個體的授權網路連線。
- CA_MODE:為執行個體指定憑證授權單位階層,可以是
GOOGLE_MANAGED_INTERNAL_CA
或GOOGLE_MANAGED_CAS_CA
。如未指定serverCaMode
,則預設設定為GOOGLE_MANAGED_INTERNAL_CA
。 這項功能目前為預先發布版。 - DNS_NAMES:在 Cloud SQL 執行個體的伺服器憑證中,以半形逗號分隔,最多新增三個 DNS 名稱。您可以使用單一憑證保護多個 DNS 名稱。這項功能僅適用於預先發布版,且僅適用於
CUSTOMER_MANAGED_CAS_CA
執行個體。 - PROJECT_ID:您的專案 ID
- INSTANCE_ID:您在上一步驟中建立的執行個體 ID
- 可為執行個體設定的 vCPU 數量取決於 SQL Server 版本。
- vCPU 數量必須為 1 或介於 2 至 96 之間的偶數。
- 記憶體大小必須為:
- 每個 vCPU 0.9 至 6.5 GB
- 256 MB 的倍數
- 至少 3.75 GB (3840 MB)
- 在執行個體上建立 SQL Server 資料庫。
- 在執行個體上建立 SQL Server 使用者。
- 安全地控管執行個體的存取權。
- 使用 SQL Server 用戶端連線至執行個體。
- 將資料匯入資料庫。
- 瞭解執行個體設定。
建立 SQL Server 執行個體
控制台
如要以純文字顯示密碼,請按一下「顯示密碼」圖示。
您可以手動輸入密碼,也可以按一下「產生」,讓 Cloud SQL 自動建立密碼。
gcloud
如要瞭解如何安裝及開始使用 gcloud CLI,請參閱安裝 gcloud CLI。如要瞭解如何啟動 Cloud Shell,請參閱 Cloud Shell 說明文件。
您必須使用 gcloud
243.0.0 以上版本。
如果是 Cloud SQL Enterprise Plus 版執行個體:
gcloud sql instances create INSTANCE_NAME \ --database-version=DATABASE_VERSION \ --region=REGION \ --tier=TIER \ --root-password=ROOT_PASSWORD \ --edition=ENTERPRISE_PLUS
如果是 Cloud SQL Enterprise 版執行個體:
gcloud sql instances create INSTANCE_NAME \ --database-version=DATABASE_VERSION \ --region=REGION \ --cpu=NUMBER_OF_vCPUs \ --memory=MEMORY_SIZE \ --root-password=ROOT_PASSWORD \ --edition=ENTERPRISE
您不需要在執行個體名稱中包含專案 ID,系統會在適當地方 (例如在記錄檔中) 自動加入。
Cloud SQL Enterprise 版的 vCPU 和記憶體大小值有限制。詳情請參閱「選擇 Cloud SQL Enterprise Plus 版或 Cloud SQL Enterprise 版」。
舉例來說,下列字串會建立具有兩個 vCPU 和 7,680 MB 記憶體的執行個體:
gcloud sql instances create myinstance \ --database-version=SQLSERVER_2017_STANDARD \ --region=us-central1 \ --cpu=2 \ --memory=7680MB \ --root-password=EXAMPLE_PASSWORD \ --edition=ENTERPRISE
如需一些範例值,請參閱 範例機器類型。
如要瞭解執行個體設定的參數,請參閱 gcloud sql instances create。
REGION 的預設值為 us-central1
。
請勿在執行個體名稱中加入敏感資訊或個人識別資訊,因為外部使用者可以看見此名稱。
您不需要在執行個體名稱中包含專案 ID,系統會在適當地方 (例如在記錄檔中) 自動加入。
如要建立高可用性執行個體,可以使用 --zone
和 --secondary-zone
參數指定主要和次要可用區。在建立或編輯執行個體時使用次要區域,須符合下列條件:
您可以新增更多參數,決定其他執行個體設定:
設定 | 參數 | 說明 |
---|---|---|
必要參數 | ||
資料庫版本 | --database-version |
資料庫版本,取決於 Cloud SQL 版本。 |
區域 | --region |
查看有效值。 |
連線 | ||
私人 IP | --network
|
--network :指定您要用於此執行個體的虛擬私人雲端網路名稱。必須已針對網路設定私人服務存取權。僅適用於測試版指令 (gcloud beta sql instances create )。
|
公開 IP | --authorized-networks |
如果是公開 IP 連線,只有來自授權網路的連線才能連線至執行個體。瞭解詳情。 |
伺服器 CA 模式 | --server-ca-mode |
|
機器類型和儲存空間 | ||
機型 | --tier |
|
儲存空間類型 | --storage-type |
判斷執行個體使用的是 SSD 還是 HDD 儲存空間。 瞭解詳情。 |
儲存空間容量 | --storage-size |
為執行個體佈建的儲存空間量,單位為 GB。 瞭解詳情。 |
自動增加儲存空間 | --storage-auto-increase |
決定 Cloud SQL 是否要在執行個體可用空間不足時,自動提供更多儲存空間。瞭解詳情。 |
自動增加儲存空間上限 | --storage-auto-increase-limit |
決定 Cloud SQL 自動擴充儲存空間的大小上限。
僅適用於 Beta 版指令 (gcloud beta sql instances create )。
瞭解詳情。
|
自動備份和高可用性 | ||
高可用性 | --availability-type |
如果為可用性高的執行個體,請設為 REGIONAL 。瞭解詳情。 |
次要可用區 | --secondary-zone |
如要建立高可用性執行個體,可以使用 --zone 和 --secondary-zone parameters 指定主要和次要可用區。在建立或編輯執行個體時使用次要區域,會受到下列限制:
如果指定主要和次要可用區,兩者必須是不同的可用區。 如果指定主要和次要可用區,兩者必須位於同一區域。 |
自動備份 | --backup-start-time |
您希望備份開始的時間範圍。 |
自動備份的保留設定 | --retained-backups-count |
要保留的自動備份數量。 瞭解詳情。 |
交易記錄檔的保留設定 | --retained-transaction-log-days |
保留交易記錄檔的天數,用於時間點還原。瞭解詳情。 |
時間點復原 | --enable-point-in-time-recovery |
啟用時間點復原和交易記錄。 瞭解詳情。 |
新增資料庫旗標 | ||
資料庫標記 | --database-flags |
您可以使用資料庫標記來控管執行個體的設定和參數。進一步瞭解資料庫標記。 |
維護排程 | ||
維護期間 | --maintenance-window-day ,
--maintenance-window-hour |
決定 Cloud SQL 可對執行個體執行中斷型維修的 1 小時期間。如未設定維護期間,系統可能會隨時執行會導致作業中斷的維護作業。瞭解詳情。 |
維護時間 | --maintenance-release-channel |
相對於同一專案中的其他執行個體,您偏好的執行個體更新時間。使用 preview 查看先前的更新,production 則可查看後續更新。瞭解詳情。
|
自訂 SAN | ||
新增自訂主體別名 (SAN) | --custom-subject-alternative-names=DNS_NAMES |
如要使用自訂 DNS 名稱連線至 Cloud SQL 執行個體,而非使用 IP 位址,請在建立執行個體時設定自訂主體別名 (SAN)。您插入自訂 SAN 設定的自訂 DNS 名稱,會新增至執行個體伺服器憑證的 SAN 欄位。這樣一來,您就能安全地使用自訂 DNS 名稱進行主機名稱驗證。 如要在用戶端和應用程式中使用自訂 DNS 名稱,必須先設定 DNS 名稱與 IP 位址之間的對應關係。這就是所謂的「DNS 解析」。您可以在自訂 SAN 設定中,新增最多三個自訂 DNS 名稱 (以半形逗號分隔)。 |
Terraform
如要建立執行個體,請使用 Terraform 資源。
套用變更
如要在 Google Cloud 專案中套用 Terraform 設定,請完成下列各節的步驟。
準備 Cloud Shell
準備目錄
每個 Terraform 設定檔都必須有自己的目錄 (也稱為根模組)。
套用變更
刪除變更
如要刪除變更,請按照下列步驟操作:
REST v1
1. 建立執行個體
下列基本 API 呼叫並未顯示所有可能的欄位。如需 JSON 要求原型,請參閱「 設定」。
另請參閱「 Instances:insert」頁面。如要瞭解執行個體設定,包括有效區域值,請參閱「執行個體設定」。如要瞭解機器類型,請參閱 自訂執行個體設定。
請勿在 instance-id
中加入敏感資訊或個人識別資訊,因為外部使用者可以看見此值。
您不需要在執行個體名稱中包含專案 ID,系統會在適當地方 (例如在記錄檔中) 自動加入。
collation
欄位 (未顯示在下列基本 API 呼叫中) 可讓您為例項中的資料庫設定所用排序規則的預設值。這個預設定序在執行個體層級是永久的,但在資料庫層級則否。您可以使用資料庫管理工具變更這項預設值,但僅限於您建立或更新的特定資料庫。建立執行個體後,您無法變更執行個體的預設定序 (除非重新建立執行個體)。如要瞭解 SQL Server 中的定序,請參閱「
定序和 Unicode 支援」。如需 JSON 要求原型,請參閱「
設定」。您可以為 collation
參數指定下列範例字串:SQL_Latin1_General_CP1_CI_AS
。
timeZone
欄位 (未顯示在下列基本 API 呼叫中) 可讓您設定執行個體的時區。建立執行個體後,您可以變更執行個體的時區。如需更多資訊和可接受的字串清單,請參閱「
設定」。您可以為 timeZone
欄位指定下列範例字串:
"Pacific Standard Time"
。
瞭解詳情。
如要建立與 Managed Microsoft AD 整合的執行個體,請為 domain
欄位指定網域,例如 subdomain.mydomain.com
。詳情請參閱「使用 Windows 驗證建立執行個體」。此外,請注意在不同專案中整合受管理 Microsoft AD 網域的
程序和限制。
使用任何要求資料之前,請先替換以下項目:
HTTP 方法和網址:
POST https://sqladmin.googleapis.com/v1/projects/PROJECT_ID/instances
JSON 要求主體:
{ "name": "INSTANCE_ID", "region": "REGION", "databaseVersion": "DATABASE_VERSION", "rootPassword": "PASSWORD", "settings": { "tier": "MACHINE_TYPE", "edition": "EDITION_TYPE", "backupConfiguration": { "enabled": true }, "dataCacheConfig": { "dataCacheEnabled": DATA_CACHE_ENABLED }, "ipConfiguration": { "privateNetwork": "PRIVATE_NETWORK", "authorizedNetworks": [AUTHORIZED_NETWORKS], "ipv4Enabled": false, "serverCaMode": "CA_MODE", "customSubjectAlternativeNames": "DNS_NAMES" } } }
如要傳送要求,請展開以下其中一個選項:
您應該會收到如下的 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-01T19:13:21.834Z", "operationType": "CREATE", "name": "OPERATION_ID", "targetId": "INSTANCE_ID", "selfLink": "https://sqladmin.googleapis.com/v1/projects/PROJECT_ID/operations/OPERATION_ID", "targetProject": "PROJECT_ID" }
建立執行個體後,您可以進一步設定預設使用者帳戶。
2. 擷取執行個體的 IPv4 位址
您也可以選擇擷取自動指派的 IPv4 位址。
在回覆中,該地址會顯示在 ipAddress
欄位。
使用任何要求資料之前,請先替換以下項目:
HTTP 方法和網址:
GET https://sqladmin.googleapis.com/v1/projects/PROJECT_ID/instances/INSTANCE_ID
如要傳送要求,請展開以下其中一個選項:
您應該會收到如下的 JSON 回應:
{ "kind": "sql#instance", "state": "RUNNABLE", "databaseVersion": "DATABASE_VERSION", "settings": { "authorizedGaeApplications": [], "tier": "MACHINE_TYPE", "kind": "sql#settings", "pricingPlan": "PER_USE", "replicationType": "SYNCHRONOUS", "activationPolicy": "ALWAYS", "ipConfiguration": { "authorizedNetworks": [], "ipv4Enabled": true }, "locationPreference": { "zone": "ZONE", "kind": "sql#locationPreference" }, "dataDiskType": "PD_SSD", "backupConfiguration": { "startTime": "19:00", "kind": "sql#backupConfiguration", "enabled": true }, "settingsVersion": "1", "dataDiskSizeGb": "10" }, "etag": "--redacted--", "ipAddresses": [ { "type": "PRIMARY", "ipAddress": "10.0.0.1" } ], "serverCaCert": { ... }, "instanceType": "CLOUD_SQL_INSTANCE", "project": "PROJECT_ID", "serviceAccountEmailAddress": "redacted@gcp-sa-cloud-sql.iam.gserviceaccount.com", "backendType": "BACKEND_TYPE", "selfLink": "https://sqladmin.googleapis.com/v1/projects/PROJECT_ID/instances/INSTANCE_ID", "connectionName": "PROJECT_ID:REGION:INSTANCE_ID", "name": "INSTANCE_ID", "region": "REGION", "gceZone": "ZONE" }
REST v1beta4
1. 建立執行個體
下列基本 API 呼叫並未顯示所有可能的欄位。如需 JSON 要求原型,請參閱「 設定」。
另請參閱「 Instances:insert」頁面。如要瞭解執行個體設定,包括有效區域值,請參閱執行個體設定。如要瞭解機器類型,請參閱 自訂執行個體設定。
請勿在 instance-id
中加入敏感資訊或個人識別資訊,因為外部使用者可以看見此值。
您不需要在執行個體名稱中包含專案 ID,系統會在適當地方 (例如在記錄檔中) 自動加入。
collation
欄位 (未顯示在下列基本 API 呼叫中) 可讓您為執行個體中的資料庫設定
排序規則類型的預設值。這個預設定序在執行個體層級是永久的,但在資料庫層級則否。您可以使用資料庫管理工具變更這項預設值,但僅限於您建立或更新的特定資料庫。建立執行個體後,您無法變更執行個體的預設定序 (除非重新建立執行個體)。如要瞭解 SQL Server 中的定序,請參閱「
定序和 Unicode 支援」。如需 JSON 要求原型,請參閱「
設定」。您可以為 collation
參數指定下列範例字串:SQL_Latin1_General_CP1_CI_AS
。
timeZone
欄位 (未顯示在下列基本 API 呼叫中) 可供您設定執行個體的時區。建立執行個體後,您可以變更執行個體的時區。如需更多資訊和可接受的字串清單,請參閱「
設定」。您可以為 timeZone
欄位指定下列範例字串:
"Pacific Standard Time"
。
瞭解詳情。
如要建立與 Managed Microsoft AD 整合的執行個體,請為 domain
欄位指定網域,例如 subdomain.mydomain.com
。詳情請參閱「
使用 Windows 驗證建立執行個體」。此外,請注意在不同專案中整合代管 Microsoft AD 網域的
程序和限制。
使用任何要求資料之前,請先替換以下項目:
HTTP 方法和網址:
POST https://sqladmin.googleapis.com/sql/v1beta4/projects/PROJECT_ID/instances
JSON 要求主體:
{ "name": "INSTANCE_ID", "region": "REGION", "databaseVersion": "DATABASE_VERSION", "rootPassword": "PASSWORD", "settings": { "tier": "MACHINE_TYPE", "edition": "EDITION_TYPE", "backupConfiguration": { "enabled": true }, "dataCacheConfig": { "dataCacheEnabled": DATA_CACHE_ENABLED }, "ipConfiguration": { "privateNetwork": "PRIVATE_NETWORK", "authorizedNetworks": [AUTHORIZED_NETWORKS], "ipv4Enabled": false, "serverCaMode": "CA_MODE", "customSubjectAlternativeNames": "DNS_NAMES" } } }
如要傳送要求,請展開以下其中一個選項:
您應該會收到如下的 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-01T19:13:21.834Z", "operationType": "CREATE", "name": "OPERATION_ID", "targetId": "INSTANCE_ID", "selfLink": "https://sqladmin.googleapis.com/sql/v1beta4/projects/PROJECT_ID/operations/OPERATION_ID", "targetProject": "PROJECT_ID" }
建立執行個體後,您可以進一步設定預設使用者帳戶。
2. 擷取執行個體的 IPv4 位址
您也可以選擇擷取自動指派的 IPv4 位址。
在回覆中,該地址會顯示在 ipAddress
欄位。
使用任何要求資料之前,請先替換以下項目:
HTTP 方法和網址:
GET https://sqladmin.googleapis.com/sql/v1beta4/projects/PROJECT_ID/instances/INSTANCE_ID
如要傳送要求,請展開以下其中一個選項:
您應該會收到如下的 JSON 回應:
{ "kind": "sql#instance", "state": "RUNNABLE", "databaseVersion": "DATABASE_VERSION", "settings": { "authorizedGaeApplications": [], "tier": "MACHINE_TYPE", "kind": "sql#settings", "pricingPlan": "PER_USE", "replicationType": "SYNCHRONOUS", "activationPolicy": "ALWAYS", "ipConfiguration": { "authorizedNetworks": [], "ipv4Enabled": true }, "locationPreference": { "zone": "ZONE", "kind": "sql#locationPreference" }, "dataDiskType": "PD_SSD", "backupConfiguration": { "startTime": "19:00", "kind": "sql#backupConfiguration", "enabled": true }, "settingsVersion": "1", "dataDiskSizeGb": "10" }, "etag": "--redacted--", "ipAddresses": [ { "type": "PRIMARY", "ipAddress": "10.0.0.1" } ], "serverCaCert": { ... }, "instanceType": "CLOUD_SQL_INSTANCE", "project": "PROJECT_ID", "serviceAccountEmailAddress": "redacted@gcp-sa-cloud-sql.iam.gserviceaccount.com", "backendType": "BACKEND_TYPE", "selfLink": "https://sqladmin.googleapis.com/sql/v1beta4/projects/PROJECT_ID/instances/INSTANCE_ID", "connectionName": "PROJECT_ID:REGION:INSTANCE_ID", "name": "INSTANCE_ID", "region": "REGION", "gceZone": "ZONE" }
產生寫入端點
寫入端點是全域網域名稱服務 (DNS) 名稱,會自動解析為目前主要執行個體的 IP 位址。如果發生備用資源容錯移轉或切換作業,這個端點會自動將連入連線重新導向至新的主要執行個體。您可以在 SQL 連線字串中使用寫入端點,取代 IP 位址。使用寫入端點後,發生區域中斷時,您就不必變更應用程式連線。
如要進一步瞭解如何使用寫入端點連線至執行個體,請參閱使用寫入端點連線至執行個體。
自訂執行個體設定
自訂執行個體設定可讓您選取執行個體所需的記憶體和 CPU 數量。您可以根據工作負載選擇合適的 VM 規格。機器類型是否適用取決於 Cloud SQL for SQL Server 版本。
對於需要即時處理的工作負載,請確保執行個體有足夠的記憶體來保存整個工作集。不過,還有其他因素可能會影響記憶體需求,例如有效連線數和內部額外負擔程序。您應執行負載測試,避免實際工作環境發生效能問題。
設定執行個體時,請選取足夠的記憶體和 vCPU 來處理工作負載,並隨著工作負載增加而升級。如果機器設定的 vCPU 數量不足,可能會喪失服務水準協議資格。詳情請參閱操作指南。
Cloud SQL Enterprise 版執行個體的機器類型
如果是 Cloud SQL Enterprise 版執行個體,您也可以使用 gcloud sql instances create
指令建立自訂執行個體設定。
機器類型名稱的格式如下:
db-custom-NUMBER_OF_vCPUs-MEMORY
請將 NUMBER_OF_vCPUs 替換為機器中的 CPU 數量,並將 MEMORY 替換為機器中的記憶體大小。
舉例來說,假設機器名稱為 db-custom
,且機器有 1 個 CPU 和 3840 MB 的 RAM,則機器的格式為 db-custom-1-3840
。
選取 CPU 數量和記憶體容量時,您選擇的設定會受到一些限制:
Cloud SQL Enterprise Plus 版執行個體的機器類型
如果是 Cloud SQL Enterprise Plus 版執行個體,機器類型會預先定義,詳情請參閱下列章節。
效能最佳化機器系列
這個機器系列兼顧價格與效能,適用於多種 SQL Server 工作負載,記憶體與運算比率為 1 個 vCPU:8 GB RAM。效能最佳化機器系列提供下列機器類型供您選擇:
Enterprise Plus 機器類型 | vCPU | 記憶體 (GB) |
---|---|---|
db-perf-optimized-N-2 | 2 | 16 |
db-perf-optimized-N-4 | 4 | 32 |
db-perf-optimized-N-8 | 8 | 64 |
db-perf-optimized-N-16 | 16 | 128 |
db-perf-optimized-N-32 | 32 | 256 |
db-perf-optimized-N-48 | 48 | 384 |
db-perf-optimized-N-64 | 64 | 512 |
db-perf-optimized-N-80 | 80 | 640 |
db-perf-optimized-N-96 | 96 | 768 |
db-perf-optimized-N-128 | 128 | 864 |
記憶體最佳化機器系列
這個機器系列提供高記憶體/運算比例,適用於記憶體密集型工作負載,每個 vCPU 的 RAM 為 32 GB。記憶體最佳化機器非常適合用於 SQL Server 工作負載,這類工作負載需要複雜的查詢、分析和商業智慧報表,在資料處理期間將較大的資料集儲存在記憶體中,可提升效能。記憶體最佳化機器系列提供下列機器類型供您選擇:
機型 | vCPU | 記憶體 (GB) |
---|---|---|
db-memory-optimized-N-4 | 4 | 128 |
db-memory-optimized-N-8 | 8 | 256 |
db-memory-optimized-N-16 | 16 | 512 |
疑難排解
問題 | 疑難排解 |
---|---|
錯誤訊息:Failed to create subnetwork. Router status is
temporarily unavailable. Please try again later. Help Token:
[token-ID] 。 |
請再次嘗試建立 Cloud SQL 執行個體。 |