创建 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 建议您在运行 SQL Server 实例时使用至少配备了 2 个 vCPU 和 4 GB 内存的机器类型。您可以使用自定义机器类型来配置 SQL Server 实例,以与工作负载的性能要求匹配。此外,您可以使用更大的永久性磁盘和更快的 SSD 永久性磁盘来提升应用的性能。

此外,您必须设置特定的防火墙规则,以允许您的实例所属的 VPC 网络或子网上的 SQL Server 流量。如需了解详情,请参阅 SQL Server 的最佳做法

控制台

要创建 SQL Server 实例,请执行以下操作:

对于安装了 SQL Server 的映像,您必须从“应用”标签中选择 SQL Server 映像。

  1. 在 GCP Console 中,转到“虚拟机实例”页面。

    转到“虚拟机实例”页面

  2. 点击创建实例
  3. 启动磁盘部分中,点击更改开始配置您的启动磁盘。
  4. 应用映像 标签页中,选择 SQL Server 映像

  5. 点击选择
  6. 点击创建以创建实例。

当您创建实例后,请创建防火墙规则以允许访问实例上的 SQL Server。默认 SQL Server 端口为 1433。

  1. 在 Cloud Platform Console 中,转到“防火墙规则”页面。在 GCP Console 中,转到“防火墙规则”页面。 转到“防火墙规则”页面
  2. 在页面顶部,点击创建防火墙规则以开始创建防火墙规则。
  3. 指定此防火墙规则的详细信息。
    • 名称字段中,指定防火墙规则的名称。
    • VPC 网络字段中,选择 SQL Server 实例所在的 VPC 网络。
    • 选择“入站”作为流量方向
    • 来源过滤条件字段中,选择您希望允许在此端口上访问的 IP 范围。对于此示例,您可以选择允许任意来源的流量
    • 允许的协议和端口部分中,输入 SQL Server 使用的端口。对于此示例,请指定 tcp:1433;,这是默认端口。
  4. 点击创建以创建此防火墙规则并允许通过端口 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 映像的其中一个公共映像系列
  • 对于 Windows Server 映像,[IMAGE_PROJECT]windows-cloud;对于预安装了 SQL Server 的 Windows Server 映像,则为 windows-sql-cloud
  • [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] 是实例所在 VPC 网络的名称。

创建 SQL Server 实例后,请设置实例的初始密码,以便您可以通过 RDP 连接实例。然后,使用 SQL Server Management Studio 在 SQL Server 实例上管理数据库

此外,您可以使用以下一项或多项建议来提升 SQL Server 的安装体验:

管理 SQL Server 数据库

使用 SQL Server Management Studio 来配置 SQL Server 数据库。您可以在本地工作站上下载和安装 SQL Server Management Studio,然后使用 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 文档