升级 Amazon RDS Custom for SQL Server 数据库实例 - Amazon Relational Database Service
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

升级 Amazon RDS Custom for SQL Server 数据库实例

您可以通过修改 Amazon RDS Custom for SQL Server 数据库实例,以使其使用新的数据库引擎版本来升级该实例。有关升级数据库实例的一般信息,请参阅升级数据库实例引擎版本

RDS Custom for SQL Server 升级概述

Amazon RDS Custom for SQL Server 支持主要版本和次要版本升级。次要版本升级可能包括安全补丁、错误修复和引擎改进。Microsoft 以累积更新(CU)形式发布这些更新。主要版本升级在版本之间引入了新功能和引擎更改,例如从 SQL Server 2019 升级到 2022。您可以立即或在计划的维护时段内应用这两种升级。为防止出现潜在的向后兼容性问题,建议在升级之前,先在非生产环境中测试应用程序。

RDS Custom for SQL Server 可让您升级 RDS 提供的引擎版本(RPEV)或自定义引擎版本(CEV)。

如果您在多可用区部署中升级 RDS Custom for SQL Server 数据库实例,则 RDS Custom for SQL Server 会对实例执行滚动升级。这种方法通过一次升级一个实例来最大限度地减少停机时间。RDS 执行以下操作来执行滚动升级:

  1. 升级备用数据库实例。

  2. 失效转移到升级后的备用数据库实例,使其成为新的主数据库实例。

  3. 升级新的备用数据库实例。

多可用区部署的数据库实例停机时间是失效转移所花费的时间。

升级 RDS Custom for SQL Server 数据库实例时,以下限制适用:

  • 不支持自定义数据库选项和参数组。

  • 升级后,将不会连接到您连接到 RDS Custom for SQL Server 数据库实例的任何其它存储卷。

升级主要和次要引擎版本

主要和次要引擎版本升级都是不可逆转的,必须始终升级到较新的版本。要确定可用的目标版本,请在修改数据库实例时使用 Amazon Web Services Management Console并从可用版本中进行选择。或者,使用 describe-db-engine-versions CLI 命令或 DescribeDBEngineVersions RDS API 命令。

对于 Linux、macOS 或 Unix:

aws rds describe-db-engine-versions \ --engine custom-sqlserver-se \ --engine-version 15.00.4322.2.v1 \ --query "DBEngineVersions[*].ValidUpgradeTarget[*].{EngineVersion:EngineVersion}" \ --output table

对于 Windows:

aws rds describe-db-engine-versions ^ --engine custom-sqlserver-se ^ --engine-version 15.00.4322.2.v1 ^ --query "DBEngineVersions[*].ValidUpgradeTarget[*].{EngineVersion:EngineVersion}" ^ --output table

输出显示可用的目标引擎版本:

-------------------------- |DescribeDBEngineVersions| +------------------------+ | EngineVersion | +------------------------+ | 15.00.4410.1.v1 | | 15.00.4415.2.v1 | | 15.00.4430.1.v1 | | 16.00.4165.4.v1 | | 16.00.4175.1.v1 | | 16.00.4185.3.v1 | +------------------------+

确定目标版本后,使用 Amazon Web Services Management Console并按照修改 RDS Custom for SQL Server 数据库实例中的说明操作。或者,也可以使用 modify-db-instance CLI 命令或 ModifyDBInstance RDS API 命令。

对于 Linux、macOS 或 Unix:

aws rds modify-db-instance \ --db-instance-identifier DB_INSTANCE_IDENTIFIER \ --engine-version ENGINE_VERSION \ --allow-major-version-upgrade \ --region Region \ --no-apply-immediately

对于 Windows:

aws rds modify-db-instance ^ --db-instance-identifier DB_INSTANCE_IDENTIFIER ^ --engine-version ENGINE_VERSION ^ --allow-major-version-upgrade ^ --region Region ^ --no-apply-immediately
注意

必须包含 --allow-major-version-upgrade 参数才能执行主要版本升级。

数据库兼容性级别

您可以使用 Microsoft SQL Server 数据库兼容性级别调整某些数据库行为,以模仿之前版本的 SQL Server。有关更多信息,请参阅 Microsoft 文档中的兼容性级别

在升级数据库实例时,任何现有的数据库将保持其原始兼容性级别。例如,如果从 SQL Server 2019 升级到 SQL Server 2022,所有现有数据库的兼容性级别均为 150。在升级后创建的所有新数据库的兼容性级别均为 160。

您可以使用 ALTER DATABASE 命令更改数据库的兼容性级别。例如,要将名为 customeracct 的数据库更改为与 SQL Server 2022 兼容,请发出以下命令:

ALTER DATABASE customeracct SET COMPATIBILITY_LEVEL = 160