Compute Engine 允许您在 Windows 实例上安装 SQL Server 并使用随用随付 (PAYG) 许可。本文档介绍如何执行以下任务:
结算
将许可字符串添加到 Windows 实例的启动磁盘后,您需要根据 SQL Server 映像的价格支付费用。
限制
您只能为以下版本的 SQL Server 添加 PAYG 许可:
- SQL Server Web 版本
- SQL Server Standard 版本
- SQL Server Enterprise 版本
添加 SQL Server 许可
启动磁盘上的 SQL Server 许可元数据使 Google Cloud 可以准确跟踪和报告 SQL Server 许可使用情况,并进行计费。使用 PAYG SQL Server 许可时,此元数据是必需的。按照以下过程将 SQL Server 许可添加到现有启动磁盘:
确定要为实例添加的许可。对于 SQL Server,许可需要与您要运行的版本匹配。如需查看有效 SQL Server 许可字符串的列表,请参阅 SQL Server 的操作系统详细信息文档中的许可字符串标签页。
停止实例:
gcloud compute instances stop VM_NAME
将
VM_NAME
替换为要停止的实例的名称。确定启动磁盘:
gcloud compute instances describe VM_NAME
将
VM_NAME
替换为实例名称。验证输出是否类似如下所示:
disks: - autoDelete: true boot: true deviceName: BOOT_DISK_NAME diskSizeGb: '20' guestOsFeatures: - type: UEFI_COMPATIBLE index: 0 interface: SCSI kind: compute#attachedDisk licenses: - BOOT_DISK_LICENSE_STRING mode: READ_WRITE source: https://www.googleapis.com/compute/v1/projects/PROJECT_NAME/zones/ZONE/disks/BOOT_DISK_NAME type: PERSISTENT
分离启动磁盘:
gcloud compute instances detach-disk VM_NAME --disk=BOOT_DISK_NAME
替换以下内容:
VM_NAME
:实例的名称BOOT_DISK_NAME
:启动磁盘的名称
克隆启动磁盘并添加其他许可:
gcloud compute disks create CLONED_BOOT_DISK_NAME \ --licenses=SQL_SERVER_LICENSE \ --source-disk=BOOT_DISK_NAME \ --source-disk-zone=BOOT_DISK_ZONE \ --zone=CLONED_BOOT_DISK_ZONE
请替换以下内容:
CLONED_BOOT_DISK_NAME
:您要为克隆的启动磁盘指定的名称SQL_SERVER_LICENSE
:要添加到启动磁盘的 SQL Server 许可。如需了解 SQL Server 许可,请参阅 Windows 上的 SQL Server 部分中的“许可”标签页BOOT_DISK_NAME
:要克隆的来源启动磁盘的名称BOOT_DISK_ZONE
:来源启动磁盘的可用区CLONED_BOOT_DISK_ZONE
:您要在其中创建克隆的启动磁盘的可用区
验证新磁盘具有正确的许可:
gcloud compute disks describe CLONED_BOOT_DISK_NAME \ --zone=CLONED_BOOT_DISK_ZONE
请替换以下内容:
CLONED_BOOT_DISK_NAME
:克隆的启动磁盘的名称CLONED_BOOT_DISK_ZONE
:克隆的启动磁盘的可用区
将新磁盘挂接为实例的启动磁盘:
gcloud compute instances attach-disk VM_NAME \ --disk=CLONED_BOOT_DISK_NAME --boot
替换以下内容:
VM_NAME
:要挂接克隆的启动磁盘的实例名称CLONED_BOOT_DISK_NAME
:克隆的启动磁盘的名称
验证实例的启动磁盘是否为具有 SQL Server 许可的新克隆磁盘。
gcloud compute instances describe VM_NAME
将
VM_NAME
替换为实例名称。启动该实例。
gcloud compute instances start VM_NAME
将
VM_NAME
替换为实例名称。(可选)如果您确定不想还原到之前的启动磁盘,则可以删除该磁盘。
gcloud compute disks delete BOOT_DISK_NAME \ --zone=BOOT_DISK_ZONE
替换以下内容:
BOOT_DISK_NAME
:您要删除的启动磁盘的名称BOOT_DISK_ZONE
:启动磁盘的可用区
获取 SQL Server 介质并安装 SQL Server
如需获取 SQL Server 安装介质并将其复制到 Compute Engine 实例启动磁盘,请执行以下操作:
使用任何版本的 SQL Server(例如 2019 Enterprise)创建包含 SQL Server 安装介质的新磁盘:
gcloud compute disks create SQL_SERVER_MEDIA_DISK_NAME \ --image-family=sql-ent-2019-win-2022 \ --image-project=windows-sql-cloud \ --zone=SQL_SERVER_ZONE
替换以下内容:
SQL_SERVER_MEDIA_DISK_NAME
:要创建的 SQL Server 介质磁盘的名称SQL_SERVER_ZONE
:创建 SQL Server 介质磁盘要使用的可用区
将该磁盘挂接到任何现有的 Compute Engine 实例:
gcloud compute instances attach-disk VM_INSTANCE_NAME \ --disk=SQL_SERVER_MEDIA_DISK_NAME --zone=SQL_SERVER_ZONE
替换以下内容:
VM_INSTANCE_NAME
:要挂接 SQL Server 介质磁盘的实例名称SQL_SERVER_MEDIA_DISK_NAME
:SQL Server 介质磁盘的名称SQL_SERVER_ZONE
:实例的可用区
将 SQL Server 介质磁盘挂接到实例后,在 Windows 机器上打开磁盘管理页面,查看该磁盘是否分配了盘符。如果未分配,请右键点击磁盘,然后选择联机以使其联机。SQL Server 介质磁盘现在是磁盘管理页面和 Windows 资源管理器中的
D:
驱动器。确保实例的启动磁盘至少有 5 GB 可用空间,然后将 SQL Server 介质复制到该磁盘:
robocopy /mir d:\sql_server_install\ c:\sql_server_install
从实例分离 SQL Server 介质磁盘:
gcloud compute instances detach-disk VM_INSTANCE_NAME \ --disk=SQL_SERVER_MEDIA_DISK_NAME
替换以下内容:
VM_INSTANCE_NAME
:要分离 SQL Server 介质磁盘的实例名称SQL_SERVER_MEDIA_DISK_NAME
:要从实例中分离的 SQL Server 介质磁盘名称
如需了解详情,请参阅 Microsoft SQL Server 安装指南。
将 SQL Server 产品密钥应用于 Compute Engine 实例
为了升级 SQL Server 安装介质,您必须获取产品密钥,并将其应用于安装了 SQL Server 的 Compute Engine 实例。如需获取产品密钥并升级 SQL Server 安装介质,请执行以下操作:
从 SQL Server 安装介质获取产品密钥:
C:\> type C:\sql_server_install\x64\DefaultSetup.ini
使用远程桌面连接到安装了 SQL Server 的实例,然后使用您的网域用户登录。
右键点击开始按钮(或者按 Win+X),然后选择运行。
点击是以确认提升权限提示。
启动 SQL Server 设置:
& c:\sql_server_install\setup.exe