

# 正在准备创建适用于 RDS Custom for SQL Server 的 CEV
<a name="custom-cev-sqlserver.preparing"></a>

您可以使用包含预安装、附带许可证（LI）的 Microsoft SQL Server 的亚马逊机器映像（AMI）来创建 CEV，也可以使用安装您自己的 SQL Server 安装媒体（BYOM）的 AMI 来创建 CEV。

## 准备 CEV
<a name="custom-cev-sqlserver.preparing.types"></a>

使用以下过程，通过自带媒体（BYOM）或预安装的 Microsoft SQL Server（LI）创建 CEV。

### 使用自带媒体（BYOM）准备 CEV
<a name="custom-cev-sqlserver.preparing.byom"></a>

以下步骤以 **Windows Server 2019 Base** 的 AMI 作为示例。

**使用 BYOM 创建 CEV**

1. 从 Amazon EC2 控制台控制中，选择**启动实例**。

1. 对于**名称**，输入实例的名称。

1. 在“快速入门”下，选择 **Windows**。

1. 选择 **Microsoft Windows Server 2019 Base**。

1. 选择适当的实例类型、键对、网络和存储设置，然后启动实例。

1. 启动或创建 EC2 实例后，请确保从步骤 4 中选择了正确的 Windows AMI：

   1. 在 Amazon EC2 控制台选择 EC2 实例。

   1. 在**详细信息**部分，检查**使用情况操作**并确保将其设置为 **RunInstances:0002**。  
![\[将 RunInstances:0002 用于 BYOM 的 Windows AMI\]](http://docs.aws.amazon.com/zh_cn/AmazonRDS/latest/UserGuide/images/cev-sqlserver-byom-ec2runinstances.png)

1. 登录 EC2 实例并将您的 SQL Server 安装媒体复制到该实例。
**注意**  
如果您使用 SQL Server 开发版构建 CEV，则可能需要使用 [Microsoft Visual Studio 订阅](https://my.visualstudio.com/Downloads?q=sqlserver%20developer)获取安装媒体。

1. 安装 SQL Server。务必执行以下操作：

   1. 查看[对 RDS Custom for SQL Server 使用 BYOM 的要求](custom-sqlserver.byom.md#custom-sqlserver.byom.requirements)和[RDS Custom for SQL Server CEV 的版本支持](#custom-cev-sqlserver.preparing.VersionSupport)。

   1. 将实例根目录设置为默认值 `C:\Program Files\Microsoft SQL Server\`。不要更改此目录。

   1. 将 SQL Server 数据库引擎账户名称设置为 `NT Service\MSSQLSERVER` 或 `NT AUTHORITY\NETWORK SERVICE`。

   1. 将 SQL Server 启动模式设置为**手动**。

   1. 将 SQL Server 身份验证模式选择为**混合**。

   1. 保留默认数据目录和 TempDB 位置的当前设置。

1. 将 SQL Server sysadmin（SA）服务器角色权限授予 `NT AUTHORITY\SYSTEM`：

   ```
   1. USE [master]
   2. GO
   3. EXEC master..sp_addsrvrolemember @loginame = N'NT AUTHORITY\SYSTEM' , @rolename = N'sysadmin'
   4. GO
   ```

1. 安装其他软件，或自定义操作系统和数据库配置以满足您的要求。

1. 在 EC2 实例上运行 Sysprep。有关更多信息，请参阅[使用 Windows Sysprep 创建 Amazon EC2 AMI](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ami-create-win-sysprep.html)。

1. 保存包含您已安装的 SQL Server 版本、其他软件和自定义项的 AMI。这将是您的黄金镜像。

1. 通过提供您创建的映像的 AMI ID 来创建新的 CEV。有关详细步骤，请参阅[创建适用于 RDS Custom for SQL Server 的 CEV](custom-cev-sqlserver.create.md)。

1. 使用 CEV 创建新的 RDS Custom for SQL Server 数据库实例。有关详细步骤，请参阅[从 CEV 创建 RDS Custom for SQL Server 数据库实例](custom-cev-sqlserver.create.md#custom-cev-sqlserver.create.newdbinstance)。

### 使用预安装的 SQL Server（LI）准备 CEV
<a name="custom-cev-sqlserver.preparing.licenseincluded"></a>

使用预安装的 Microsoft SQL Server（LI）创建 CEV 的以下步骤以 **SQL Server CU20** 版本号为 `2023.05.10` 的 AMI 作为示例。创建 CEV 时，请选择具有最新版本号的 AMI。这可以确保您使用的是支持的 Windows Server 和 SQL Server 版本 [具有最新的累积更新（CU）]。

**使用预安装的 Microsoft SQL Server（LI）创建 CEV**

1. 选择最新可用的 AWS EC2 Windows 亚马逊机器映像（AMI），其中带有附带许可证（LI）的 Microsoft Windows Server 和 SQL Server。

   1. 在 [Windows AMI 版本历史记录](https://docs.aws.amazon.com/AWSEC2/latest/WindowsGuide/ec2-windows-ami-version-history.html)中搜索 **CU20**。

   1. 记下版本号。对于 SQL Server 2019 CU20，版本号为 `2023.05.10`。  
![\[SQL Server 2019 CU20 的 AMI 版本历史记录结果。\]](http://docs.aws.amazon.com/zh_cn/AmazonRDS/latest/UserGuide/images/rds_custom_sqlserver_cev_find_ami_history_li_cu20.png)

   1. 通过以下网址打开 Amazon EC2 控制台：[https://console.aws.amazon.com/ec2/](https://console.aws.amazon.com/ec2/)。

   1. 在 Amazon EC2 控制台的左侧导航窗格中，选择 **Images**（映像），然后选择 **AMI**。

   1. 选择**公有映像**。

   1. 在搜索框中输入 `2023.05.10`。随即出现 AMI 的列表。

   1. 在搜索框中输入 `Windows_Server-2019-English-Full-SQL_2019` 以筛选结果。应显示以下结果。  
![\[使用 SQL Server 2019 CU20 时支持的 AMI。\]](http://docs.aws.amazon.com/zh_cn/AmazonRDS/latest/UserGuide/images/rds_custom_sqlserver_cev_find_ami_li_cu.png)

   1. 选择要使用的 AMI 以及 SQL Server 版本。

1. 从您选择的 AMI 创建或启动 EC2 实例。

1. 登录 EC2 实例并安装其他软件，或自定义操作系统和数据库配置以满足您的要求。

1. 在 EC2 实例上运行 Sysprep。有关使用 Sysprep 准备 AMI 的更多信息，请参阅[使用 Sysprep 创建标准化的亚马逊机器映像（AMI）](https://docs.aws.amazon.com/AWSEC2/latest/WindowsGuide/Creating_EBSbacked_WinAMI.html#sysprep-using-ec2launchv2)。

1. 保存包含您已安装的 SQL Server 版本、其他软件和自定义项的 AMI。这将是您的黄金镜像。

1. 通过提供您创建的映像的 AMI ID 来创建新的 CEV。有关创建 CEV 的详细步骤，请参阅 [创建适用于 RDS Custom for SQL Server 的 CEV](custom-cev-sqlserver.create.md)。

1. 使用 CEV 创建新的 RDS Custom for SQL Server 数据库实例。有关详细步骤，请参阅[从 CEV 创建 RDS Custom for SQL Server 数据库实例](custom-cev-sqlserver.create.md#custom-cev-sqlserver.create.newdbinstance)。

## RDS Custom for SQL Server CEV 的区域可用性
<a name="custom-cev-sqlserver.preparing.RegionVersionAvailability"></a>

以下 AWS 区域中提供对 RDS Custom for SQL Server 的自定义引擎版本（CEV）的支持：
+ 美国东部（俄亥俄州）
+ 美国东部（弗吉尼亚州北部）
+ 美国西部（俄勒冈州）
+ 美国西部（北加利福尼亚）
+ 亚太地区（孟买）
+ 亚太地区（大阪）
+ 亚太地区（首尔）
+ 亚太地区（新加坡）
+ 亚太地区（悉尼）
+ 亚太地区（东京）
+ 加拿大（中部）
+ 欧洲地区（法兰克福）
+ 欧洲地区（爱尔兰）
+ 欧洲地区（伦敦）
+ 欧洲地区（巴黎）
+ 欧洲地区（斯德哥尔摩）
+ 南美洲（圣保罗）

## RDS Custom for SQL Server CEV 的版本支持
<a name="custom-cev-sqlserver.preparing.VersionSupport"></a>

以下 AWS EC2 Windows AMI 支持创建适用于 RDS Custom for SQL Server 的 CEV：
+ 对于使用预安装媒体的 CEV，带有附带许可证（LI）的 Microsoft Windows Server 2019（操作系统）和 SQL Server 2022 或 2019 的 AWS EC2 Windows AMI
+ 对于使用自带媒体（BYOM）的 CEV，带有 Microsoft Windows Server 2019（操作系统）的 AWS EC2 Windows AMI

以下操作系统（OS）和数据库版本支持创建适用于 RDS Custom for SQL Server 的 CEV：
+ 对于使用预装媒体的 CEV：
  + 带有 CU9、CU13、CU14-GDR、CU15-GDR、CU16、CU17、CU18、CU19、CU19-GDR、CU20-GDR、CU21-GDR、CU22 和 CU22-GDR 的 SQL Server 2022 企业版、标准版或 Web 版。
  + 带有 CU8、CU17、CU18、CU20、CU24、CU26、CU28-GDR、CU29-GDR、CU30、CU32 和 CU32-GDR 的 SQL Server 2019 企业版、标准版或 Web 版。
+ 对于使用自带媒体（BYOM）的 CEV，
  + 带有 CU9、CU13、CU14-GDR、CU15-GDR、CU16、CU17、CU18、CU19、CU19-GDR、CU20-GDR、CU21-GDR、CU22 和 CU22-GDR 的 SQL Server 2022 企业版、标准版或开发版。
  + 带有 CU8、CU17、CU18、CU20、CU24、CU26、CU28-GDR、CU29-GDR、CU30、CU32 和 CU32-GDR 的 SQL Server 2019 企业版、标准版或开发版。
+ 对于使用预安装媒体或自带媒体（BYOM）的 CEV，Windows Server 2019 是唯一支持的操作系统。

有关更多信息，请参阅[AWS Windows AMI 版本历史记录](https://docs.aws.amazon.com/ec2/latest/windows-ami-reference/ec2-windows-ami-version-history.html)。

## RDS Custom for SQL Server CEV 的要求
<a name="custom-cev-sqlserver.preparing.Requirements"></a>

以下要求应用于创建适用于 RDS Custom for SQL Server 的 CEV：
+ 用于创建 CEV 的 AMI 必须基于 RDS Custom for SQL Server 支持的操作系统和数据库配置。有关支持的配置的更多信息，请参阅 [Amazon RDS Custom for SQL Server 的要求和限制](custom-reqs-limits-MS.md)。
+ CEV 必须具有唯一的名称。您无法创建与现有 CEV 同名的 CEV。
+ 必须使用 SQL Server 的以下命名模式命名 CEV：*主要版本 \$1 次要版本 \$1 自定义字符串*。*主要版本 \$1 次要版本*必须与 AMI 提供的 SQL Server 版本相匹配。例如，您可以将带有 SQL Server 2019 CU17 的 AMI 命名为 **15.00.4249.2.my\$1cevtest**。
+ 您必须使用 Sysprep 准备 AMI。有关使用 Sysprep 准备 AMI 的更多信息，请参阅[使用 Sysprep 创建标准化的亚马逊机器映像（AMI）](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ami-create-win-sysprep.html)。
+ 您负责维护 AMI 的生命周期。从 CEV 创建的 RDS Custom for SQL Server 数据库实例不存储 AMI 的副本。它保持一个指向您用于创建 CEV 的 AMI 的指针。AMI 必须存在，RDS Custom for SQL Server 数据库实例才能保持可运行状态。

## RDS Custom for SQL Server CEV 的限制
<a name="custom-cev-sqlserver.preparing.Limitations"></a>

以下限制适用于 RDS Custom for SQL Server 的自定义引擎版本：
+ 如果存在与 CEV 关联的资源（如数据库实例或数据库快照），则无法将其删除。
+ 要创建 RDS Custom for SQL Server 数据库实例，CEV 的状态必须为 `pending-validation`、`available`、`failed` 或 `validating`。如果 CEV 状态为 `incompatible-image-configuration`，则无法使用此 CEV 创建 RDS Custom for SQL Server 数据库实例。
+ 要修改 RDS Custom for SQL Server 数据库实例以使用新的 CEV，CEV 的状态必须为 `available`。
+ 无法从现有 RDS Custom for SQL Server 数据库实例创建 AMI 或 CEV。
+ 您无法修改现有 CEV 以使用其他 AMI。但是，您可以修改 RDS Custom for SQL Server 数据库实例以使用不同的 CEV。有关更多信息，请参阅 [修改 RDS Custom for SQL Server 数据库实例](custom-managing.modify-sqlserver.md)。
+ 不支持使用与创建数据库实例时提供的 KMS 密钥不同的客户自主管理型 KMS 密钥来对 AMI 或 CEV 进行加密。
+ 不支持 CEV 的跨区域副本。
+ 不支持 CEV 的跨账户副本。
+ 删除 CEV 后，无法还原或恢复它。但是，您可以从同一 AMI 创建新的 CEV。
+ RDS Custom for SQL Server 数据库实例将您的 SQL Server 数据库文件存储在 *D:\$1* 驱动器中。与 CEV 关联的 AMI 应将 Microsoft SQL Server 系统数据库文件存储在 *C:\$1* 驱动器中。
+ RDS Custom for SQL Server 数据库实例保留您对 SQL Server 所做的配置更改。在从 CEV 创建的正在运行的 RDS Custom for SQL Server 数据库实例上对操作系统所做的任何配置更改都不会保留。如果您需要对操作系统进行永久配置更改并将其保留为新的基准配置，请创建新的 CEV 并修改数据库实例以使用新的 CEV。
**重要**  
修改 RDS Custom for SQL Server 数据库实例以使用新的 CEV 是一项离线操作。您可以立即执行修改，也可以安排在每周维护时段内进行修改。
+ 当您修改 CEV 时，Amazon RDS 不会将这些修改推送到任何关联的 RDS Custom for SQL Server 数据库实例。必须修改每个 RDS Custom for SQL Server 数据库实例，才能使用新的或更新的 CEV。有关更多信息，请参阅 [修改 RDS Custom for SQL Server 数据库实例](custom-managing.modify-sqlserver.md)。
+ 
**重要**  
如果删除 CEV 使用的 AMI，则任何可能需要更换主机的修改（例如规模计算）都将失败。然后，RDS Custom for SQL Server 数据库实例将放在 RDS 支持边界之外。建议您避免删除与 CEV 关联的任何 AMI。