建立 SQL Server 執行個體

本指南將說明如何在 Google Compute Engine 上建立 SQL Server 執行個體。至於可在 Compute Engine 上執行的 Windows Server 執行個體與 Windows 應用程式,如需相關的一般資訊,請參閱 Compute Engine 上的 Windows 一文。

如要瞭解如何建立及設定效能最佳化的 SQL Server 執行個體,請參閱建立高效能 SQL Server 執行個體一文。或者,您也可以使用 HammerDB 在 SQL Server 上執行工作負載測試。附註:Windows Server 和 SQL Server 映像檔為進階資源,可能會產生額外的使用費用。

事前準備

建立 SQL Server 執行個體

如要建立 SQL Server 執行個體,請指定 SQL Server 特定版本的映像檔系列或您需要的映像檔。如需 SQL Server 映像檔系列,請參閱公開映像檔清單。

與多數 Linux 執行個體相比,SQL Server 執行個體需要較多虛擬 CPU 和較大容量記憶體的機器類型,才能發揮最佳性能。Google 建議您使用搭配至少 2 個 vCPU 和至少 4 GB 記憶體的機器類型,以利執行 SQL Server 執行個體。您可以使用自訂機器類型設定 SQL Server 執行個體,以滿足您工作負載的所需效能。此外,您也可以使用較大的永久磁牒和較快的 SSD 永久磁牒,藉此提升應用程式的效能。

除此之外,您必須設定特定的防火牆規則,允許 SQL Server 流量送至您執行個體隸屬的 VPC 網路或子網路。詳情請參閱 SQL Server 最佳做法

主控台

如何建立 SQL Server 執行個體:

針對 SQL Server 的映像檔,您必須在 [應用程式] 分頁中選取 SQL Server 映像檔。

  1. 在 GCP 主控台中,前往「VM Instances」(VM 執行個體) 頁面。

    前往 VM 執行個體頁面

  2. 按一下 [建立執行個體]
  3. 在「Boot disk」(開機磁碟) 部分中,按一下 [Change] (變更) 即可開始設定開機磁碟。
  4. Application images分頁中,選擇 a SQL Server image

  5. 按一下 [選取]
  6. 按一下 [Create] (建立) 來建立執行個體。

建立執行個體後,請建立防火牆規則以允許執行個體存取 SQL Server。預設的 SQL Server 通訊埠為 1433。

  1. 前往 Cloud Platform 主控台中的「Firewall Rules」(防火牆規則) 頁面。前往 Cloud Platform 主控台中的「Firewall Rules」(防火牆規則) 頁面。 前往「Firewall Rules」(防火牆規則) 頁面
  2. 按一下頁面頂端的 [Create firewall rule] (建立防火牆規則),即可開始建立防火牆規則。
  3. 指定這個防火牆規則的詳細資料。
    • 在 [Name] (名稱) 欄位中,指定防火牆規則的名稱。
    • 在 [VPC network] (VPC 網路) 欄位中,選取您的 SQL Server 執行個體所在的虛擬私人雲端網路。
    • 在「Direction of traffic」(流量方向),選取「Ingress」(輸入)。
    • 在 [Source filter] (來源篩選器) 欄位中,選取您要允許存取這個通訊埠的 IP 範圍。在這個範例中,您可以選取 [Allow from any source] (允許任何來源的流量)
    • 在「Allowed protocols and ports」(允許的通訊協定和通訊埠) 部分中,輸入 SQL Server 使用的通訊埠。這個範例指定了 tcp:1433;,也就是預設通訊埠。
  4. 按一下 [Create] (建立) 即可建立這個防火牆規則,並允許透過通訊埠 1433 存取 SQL Server 執行個體。

如果您需要為執行個體新增其他防火牆規則,請參閱防火牆規則說明文件

gcloud

使用 compute images list 指令查看可用的 SQL Server 映像檔清單:

gcloud compute images list --project windows-sql-cloud --no-standard-images

使用 compute instances create 指令建立新的執行個體,並指定其中一個 Windows Server 或 SQL Server 公開映像檔的映像檔系列:

gcloud compute instances create [INSTANCE_NAME] \
    --image-project windows-sql-cloud \
    --image-family [IMAGE_FAMILY] \
    --machine-type [MACHINE_TYPE] \
    --boot-disk-size [BOOT_DISK_SIZE] \
    --boot-disk-type [BOOT_DISK_TYPE]

其中:

  • [INSTANCE_NAME] 是新執行個體的名稱。
  • [IMAGE_FAMILY] 是 Windows Server 或 SQL Server 映像檔的其中一個公開映像檔系列
  • [MACHINE_TYPE] 是可用的機器類型之一。
  • [BOOT_DISK_SIZE] 是開機磁碟的大小,單位為 GB。永久磁碟越大則總處理量越高
  • [BOOT_DISK_TYPE] 是執行個體的開機磁碟類型。指定 pd-ssd 即可使用更快速的 SSD 永久磁碟,指定 pd-standard 則可使用標準 HDD 永久磁碟。

建立執行個體後,請建立防火牆規則以允許執行個體存取 SQL Server。預設的 SQL Server 通訊埠為 1433。

gcloud compute firewall-rules create sql-server-1433 \
--description "Allow SQL Server access from all sources on port 1433." \
--allow tcp:1433 --network [NETWORK]

其中 [NETWORK] 是您的執行個體所在的 VPC 網路名稱。

如果您需要為執行個體新增其他防火牆規則,請參閱防火牆規則說明文件

API

如要以 API 建立執行個體,請在執行個體建立要求中加入 initializeParams 屬性,並指定 Windows 映像檔。

POST https://www.googleapis.com/compute/v1/projects/[PROJECT_ID]/zones/[ZONE]/instances

instance = {
  "name": "[INSTANCE_NAME]",
  "machineType": "zones/[ZONE]/machineTypes/[MACHINE_TYPE]",
  "disks": [{
      "boot": "true",
      "type": "PERSISTENT",
      "initializeParams": {
         "diskName": "[DISK_NAME]",
         "sourceImage": "projects/windows-sql-cloud/global/images/family/[IMAGE_FAMILY]",
         "diskSizeGb": "[BOOT_DISK_SIZE]",
         "diskType": "[BOOT_DISK_TYPE]",
       }
    }],
  "networkInterfaces": [{
    "accessConfigs": [{
      "type": "ONE_TO_ONE_NAT",
      "name": "External NAT"
     }],
    "network": "global/networks/default"
  }],
  "serviceAccounts": [{
       "email": DEFAULT_SERVICE_EMAIL,
       "scopes": DEFAULT_SCOPES
  }]
}

其中:

  • [PROJECT_ID] 是專案 ID。
  • [ZONE] 是這個執行個體所在的區域
  • [INSTANCE_NAME] 是新執行個體的名稱。
  • [IMAGE_FAMILY] 是 Windows Server 或 SQL Server 映像檔的其中一個公開映像檔系列
  • [IMAGE_PROJECT]windows-cloud (適用於 Windows Server 映像檔) 或 windows-sql-cloud (適用於預先安裝 SQL Server 的 Windows Server 影像檔)。
  • [MACHINE_TYPE] 是可用的機器類型之一。
  • [BOOT_DISK_SIZE] 是開機磁碟的大小,單位為 GB。永久磁碟越大則總處理量越高
  • [BOOT_DISK_TYPE] 是執行個體的開機磁碟類型。指定 pd-ssd 即可使用更快速的 SSD 永久磁碟,指定 pd-standard 則可使用標準 HDD 永久磁碟。

建立執行個體後,請建立防火牆規則以允許執行個體存取 SQL Server。預設的 SQL Server 通訊埠為 1433。

POST https://www.googleapis.com/compute/v1/projects/[PROJECT_ID]/global/firewalls

{
 "name": "sql-server-1433",
 "network": "global/networks/[NETWORK]",
 "allowed": [
  {
   "IPProtocol": "tcp",
   "ports": [
    "1433"
   ]
  }
 ]
}

其中:

  • [PROJECT_ID] 是專案 ID。
  • [NETWORK] 是您的執行個體所在的虛擬私人雲端網路名稱。

建立 SQL Server 執行個體後,請設定執行個體的初始密碼,以便透過 RDP 連線至執行個體,接著使用 SQL Server Management Studio 管理 SQL Server 執行個體上的資料庫

此外,您可以透過下列一或多個項目強化已安裝的 SQL Server 功能:

管理 SQL Server 資料庫

使用 SQL Server Management Studio 即可設定 SQL Server 資料庫。您可以在本機工作站上下載並安裝 SQL Server Management Studio,然後在執行個體上使用這套工具遠端連線至資料庫引擎

如果您無法在本機工作站上安裝 Management Studio,請透過 RDP 連線至執行個體,並在執行個體本身上執行 Management Studio。根據預設,SQL Server 2012 和 SQL Server 2014 都包含 SQL Server Management Studio。如果是 SQL Server 2016,您必須從 Microsoft 網站下載 SQL Server Management Studio,並在執行個體上進行安裝。

根據預設,SQL Server 會使用 Windows 驗證模式控管 SQL Server 本身的遠端存取權。如要使用 SQL Server 驗證模式,請變更為驗證模式

後續步驟

本頁內容對您是否有任何幫助?請提供意見:

傳送您對下列選項的寶貴意見...

這個網頁
Compute Engine 說明文件