将 SQL Server 升级到最新版本

在本指南中,你将了解如何使用数据迁移助手 (DMA) 将用户数据库从早期版本的 SQL Server 升级到 SQL Server 2022 (16.x)。

有关其他迁移指南,请参阅 Azure 数据库迁移

先决条件

在开始迁移项目之前,请务必满足相关先决条件。 了解升级 SQL Server 支持的版本和注意事项。

若要准备迁移,请下载并安装以下项:

预迁移

在确认源环境受支持并且满足所有先决条件之后,便可开始迁移前的阶段。 该过程涉及清点需要迁移的数据库。 接下来,评估数据库是否存在潜在的迁移问题或阻碍因素,然后解决可能已发现的任何迁移问题或阻碍因素。 以下两个部分介绍了迁移前的步骤:发现和评估。

发现

发现阶段识别现有数据源以及有关所用功能的详细信息。 它有助于更好地了解和计划迁移。 此过程涉及扫描网络,以确定组织的所有 SQL 实例以及所用的版本和功能。

若要使用 MAP 工具包创建清点扫描,请完成以下步骤。

发现阶段

  1. 下载 MAP 工具包,然后安装。

  2. 运行 MAP 工具包。

    1. 打开 MAP 工具包,然后在左侧窗格中选择“数据库”

      你将看到以下屏幕:

      Screenshot of MAP Overview.

    2. 选择“创建/选择数据库”

      Screenshot of MAP Create/Select DB.

    3. 确保已选中“创建清点数据库”,输入数据库的名称和简要描述,然后选择“确定”

      Screenshot of MAP Create/Select DB Overview.

      下一步是从创建的数据库收集数据。

    4. 选择“收集清点数据”

      Screenshot of MAP Collect Inventory Data.

    5. 在清点和评估向导中,选择“SQL Server”和“包含数据库详细信息的 SQL Server”,然后选择“下一步”

      Screenshot of MAP Inventory and Assessment Wizard.

    6. 选择最佳方法选项以搜索托管 Microsoft 产品的计算机,然后选择“下一步”

      Screenshot of MAP Inventory and Assessment Wizard Discovery Methods.

    7. 为要浏览的系统输入凭据或创建新凭据,然后选择“下一步”

      Screenshot of MAP Inventory and Assessment Wizard Discovery Credentials.

    8. 设置凭据的顺序,然后选择“下一步”

      Screenshot of MAP Inventory and Assessment Wizard Discovery Credentials Order.

      现在,你需要为要发现的每台计算机指定凭据。 你可以对每台计算机/机器使用唯一凭据,也可选择使用“所有计算机凭据”列表。

    9. 设置凭据后,选择“保存”,然后选择“下一步”

      Screenshot of MAP Inventory and Assessment Wizard Discovery All Computer Credentials.

    10. 验证你的选择内容摘要,然后选择“完成”

      Screenshot of MAP Inventory and Assessment Wizard Summary.

    11. 等待几分钟(具体取决于数据库的数量)以获取数据收集摘要报表。

      Screenshot of MAP Inventory and Assessment Wizard Summary Report.

    12. 选择“关闭”

      此时将显示该工具的主窗口,其中显示了目前完成的数据库发现的摘要。

    13. 报表生成和数据收集。

在该工具的右上角,会显示一个“选项”页面,你可以使用该页面生成有关 SQL Server 评估和数据库详细信息的报表。

Screenshot of MAP Report Generation.

  1. (逐一)选择两个选项来生成报表。

    Screenshot of MAP Report Generation Status.

评估和转换

确定数据源之后,下一步是评估本地 SQL Server 实例。 在升级 SQL Server 实例之前,请使用数据迁移助手 (DMA) 评估源数据库。

若要使用 DMA 创建评估,请完成以下步骤。

  1. 下载 DMA 工具,然后安装。

  2. 创建一个新评估项目。

    1. 选择“新建”(+) 图标,选择“评估”项目类型,指定项目名称,选择“SQL Server”作为源和目标,然后选择“创建”

      Screenshot of New Assessment.

    2. 选择计划要迁移到并需要针对其运行评估的目标 SQL Server 版本,选择以下一种或两种评估报表类型(“兼容性问题”和“新功能建议”),然后选择“下一步”

      Screenshot of Report Types.

    3. 在“连接到服务器”中,指定要连接到的 SQL Server 实例的名称,指定身份验证类型和连接属性,然后选择“连接”

    4. 在“添加源”面板中,选择要评估的数据库,然后选择“添加”

      Screenshot of Add databases.

    5. 选择“开始评估”

      现在等待评估结果;评估的持续时间取决于添加的数据库数量和每个数据库的架构大小。 结果会在可用时立即按数据库显示。

    6. 选择已完成评估的数据库,然后使用切换器在“兼容性问题”和“功能建议”之间切换。

      Screenshot of Assessment results.

    7. 通过分析在“中断性变更”、“行为变更”和“已弃用的功能”下确定的每个问题的受影响对象及其详细信息,查看兼容性问题。

    8. 查看“性能”、“存储”和“安全”方面的功能建议。

      功能建议涵盖了各种功能,例如内存中 OLTP 和列存储、Always Encrypted (AE)、动态数据掩码 (DDM) 以及透明数据加密 (TDE)。

  3. 查看评估结果。

    1. 完成所有数据库评估后,选择“导出报表”将结果导出到 JSON 或 CSV 文件中,供在你方便时分析数据。

可选 A/B 测试

此步骤为可选步骤,对于完成迁移不是必需的。 若要使用 DEA 进行数据库迁移测试,请完成以下步骤。

  1. 下载 DMA 工具,然后安装。

  2. 运行跟踪捕获

    1. 在左侧导航树上,选择相机图标以转到“所有捕获”

      Screenshot of New trace capture.

    2. 若要开始新的捕获,请选择“新建捕获”

    3. 若要配置捕获,请指定跟踪名称、持续时间、SQL Server 实例名称、数据库名称以及用于在运行 SQL Server 的计算机上存储跟踪文件的共享位置。

      Screenshot of Provide trace capture inputs.

    4. 选择“开始”以开始跟踪捕获。

  3. 运行跟踪重播

    1. 在左侧导航树上,选择播放图标以转到“所有重播”。

      Screenshot of New trace replay.

    2. 若要开始新的重播,请选择“新建重播”

    3. 若要配置重播,请指定重播名称、控制器计算机名称、指向控制器上源跟踪文件的路径、SQL Server 实例名称,以及用于在运行 SQL Server 的计算机上存储目标跟踪文件的路径。

    4. 选择“开始”以开始重播捕获。

  4. 创建新的分析报表

    1. 在左侧导航树上,选择清单图标以转到“分析报表”

      Screenshot of New Analysis Report.

    2. 连接到要在其上存储报表数据库的 SQL Server。

      你将看到服务器中所有报表的列表。

    3. 选择“新建报表”

    4. 若要配置报表,请指定报表名称,并指定源和目标 SQL Server 实例的跟踪路径。

      Screenshot of Provide report analysis inputs.

  5. 查看分析报表

    1. 在报表的第一页上,将显示运行试验的目标服务器的版本和编译信息。

      阈值的作用是调整 A/B 测试分析的灵敏度或容差。

      注意

      默认情况下,阈值设置为 5%;大于或等于 5% 的任何性能改进都被归类为“改进”。 下拉列表选择器的作用是使用不同的性能阈值评估报表。

    2. 选择饼图的各个部分以查看有关性能的详细指标。

      Screenshot of Drill down report.

      在性能更改类别的详细信息页面上,你将看到该类别中的查询列表。

      Screenshot of Drill down report queries.

    3. 选择单个查询,以获取性能摘要统计信息、错误信息和查询计划信息。

      Screenshot of Summary Statistics.

转换

在评估了要迁移的源数据库实例之后,对于异构迁移,需要将架构转换为在目标环境中工作。 由于升级到较新版本的 SQL Server 被视为是同构迁移,因此转换步骤不是必需的。

迁移概述

在满足必需的先决条件并完成与迁移前的阶段相关的任务后,便可完成架构和数据迁移。 成功迁移和升级意味着你已解决在迁移前的阶段发现的所有问题。

查看使用 DMA 工具发现的兼容性问题。

通过创建系统数据库 msdb 的备份来保留备份日志、维护计划和其他自动化任务,包括作业。

使用 SQL Server Management Studio 查看链接服务器。 在对象资源管理器中,右键单击服务器对象以展开列表。

根据数据和环境的复杂性,可能需要考虑其他因素。

迁移架构和数据

评估数据库之后,下一步是开始使用 DMA 迁移架构和数据库的过程。

迁移架构和数据同步

若要使用 DMA 创建迁移项目,请完成以下步骤。

  1. 创建新迁移项目

    1. 选择“新建”图标,选择“迁移”项目类型,然后选择“SQL Server”作为源和目标类型,最后选择“创建”

      Screenshot of New Migration.

    2. 提供源和目标 SQL Server 连接详细信息,然后选择“下一步”

      Screenshot of Source & Target details.

    3. 从要迁移的源中选择数据库,然后为备份操作指定源和目标 SQL Server 可以访问的共享位置

      注意

      确保运行源 SQL Server 实例的服务帐户对共享位置具有写入权限,目标 SQL Server 服务帐户对共享位置具有读取权限。

      Screenshot of Select databases to migrate.

    4. 选择“下一步”,选择要迁移的登录名,然后选择“开始迁移”

      Screenshot of Migration Logins.

    5. 现在,在“查看结果”屏幕中监视迁移进度。

  2. 查看迁移结果

    1. 选择“导出报表”,将迁移结果保存到 .csv 或 .json 文件中。

    2. 查看保存的文件,了解有关数据和登录名迁移的详细信息,并验证该过程是否成功完成。

数据同步和直接转换

对于停机时间最短的迁移,迁移的源在一次性迁移后会继续更改,数据和架构可能与目标有所不同。 在此过程中,需要确保捕获源中的所有更改,并几乎实时地应用到目标。 在确认源中的更改都已应用到目标后,从源环境切换到目标环境。

此方案尚不支持停机时间最短的迁移,因此数据同步和切换计划目前不适用。

迁移之后

成功完成迁移阶段后,需要完成一系列的迁移后任务,以确保一切都能尽量顺利、高效地进行。 迁移后阶段对于协调所有数据准确性问题、验证完整性以及解决工作负载的性能问题至关重要。

若要在迁移后详细了解这些问题以及用于缓解问题的具体步骤,请参阅迁移后验证和优化指南

验证应用程序

将数据迁移到目标环境后,以前使用源的所有应用程序都需要开始使用目标。 在某些情况下,实现这一点需要对应用程序进行更改。 对数据库进行测试,验证应用程序在迁移后是否正常工作。