选择您的 Cookie 首选项

我们使用必要 Cookie 和类似工具提供我们的网站和服务。我们使用性能 Cookie 收集匿名统计数据,以便我们可以了解客户如何使用我们的网站并进行改进。必要 Cookie 无法停用,但您可以单击“自定义”或“拒绝”来拒绝性能 Cookie。

如果您同意,AWS 和经批准的第三方还将使用 Cookie 提供有用的网站功能、记住您的首选项并显示相关内容,包括相关广告。要接受或拒绝所有非必要 Cookie,请单击“接受”或“拒绝”。要做出更详细的选择,请单击“自定义”。

SQL Server 诊断支持脚本

聚焦模式
SQL Server 诊断支持脚本 - AWS 数据库迁移服务

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

接下来,您可以找到诊断支持脚本的说明,该脚本可用于分析 AWS DMS 迁移配置中的本地数据库或 Amazon RDS for SQL Server 数据库。这些脚本可以与源端点或目标端点一起使用。对于本地数据库,请在 sqlcmd 命令行实用程序中运行这些脚本。有关使用此实用程序的更多信息,请参阅 Microsoft 文档中的 sqlcmd – 使用实用程序

对于 Amazon RDS 数据库,您无法使用 sqlcmd 命令行实用程序进行连接。而是使用连接到 Amazon RDS SQL Server 的任意客户端工具运行这些脚本。

在运行脚本之前,请确保您使用的用户账户具有所需的访问权限,可以访问 SQL Server 数据库。无论是本地数据库还是 Amazon RDS 数据库,您都可以使用与访问 SQL Server 数据库相同的权限,无需 SysAdmin 角色。

为本地 SQL Server 数据库设置最低权限

为运行本地 SQL Server 数据库设置最低权限
  1. 使用 SQL Server Management Studio(SSMS)创建采用密码身份验证的新 SQL Server 账户,例如 on-prem-user

  2. 在 SSMS 的用户映射部分中,选择 MSDBMASTER 数据库(将提供公有权限),然后为您要运行脚本的数据库分配 DB_OWNER 角色。

  3. 打开新账户的上下文(右键单击)菜单,选择安全性,然后明确授予 Connect SQL 权限。

  4. 运行以下授权命令。

    GRANT VIEW SERVER STATE TO on-prem-user; USE MSDB; GRANT SELECT ON MSDB.DBO.BACKUPSET TO on-prem-user; GRANT SELECT ON MSDB.DBO.BACKUPMEDIAFAMILY TO on-prem-user; GRANT SELECT ON MSDB.DBO.BACKUPFILE TO on-prem-user;

为 Amazon RDS SQL Server 数据库设置最低权限

以最低权限运行 Amazon RDS SQL Server 数据库
  1. 使用 SQL Server Management Studio(SSMS)创建采用密码身份验证的新 SQL Server 账户,例如 rds-user

  2. 在 SSMS 的用户映射部分中,选择 MSDB 数据库(将提供公有权限),然后为您要运行脚本的数据库分配 DB_OWNER 角色。

  3. 打开新账户的上下文(右键单击)菜单,选择安全性,然后明确授予 Connect SQL 权限。

  4. 运行以下授权命令。

    GRANT VIEW SERVER STATE TO rds-user; USE MSDB; GRANT SELECT ON MSDB.DBO.BACKUPSET TO rds-user; GRANT SELECT ON MSDB.DBO.BACKUPMEDIAFAMILY TO rds-user; GRANT SELECT ON MSDB.DBO.BACKUPFILE TO rds-user;

SQL Server 支持脚本

以下主题介绍如何下载、查看和运行可用于 SQL Server 的各个支持脚本。您还可以了解如何查看脚本输出并将其上传到您的 AWS Support 案例中。

awsdms_support_collector_sql_server.sql 脚本

下载 awsdms_support_collector_sql_server.sql 脚本。

注意

仅在 SQL Server 2014 及更高版本上运行此 SQL Server 诊断支持脚本。

此脚本收集有关您的 SQL Server 数据库配置的信息。请记得验证脚本的校验和,如果校验和验证成功,请查看脚本中的 SQL 代码,注释掉任何您不愿意运行的代码。在您确定脚本的完整性和内容没有问题之后,可以运行该脚本。

运行适用于本地 SQL Server 数据库的脚本
  1. 使用以下 sqlcmd 命令行运行脚本。

    sqlcmd -Uon-prem-user -Ppassword -SDMS-SQL17AG-N1 -y 0 -iC:\Users\admin\awsdms_support_collector_sql_server.sql -oC:\Users\admin\DMS_Support_Report_SQLServer.html -dsqlserverdb01

    指定的 sqlcmd 命令参数如下所示:

    • -U – 数据库用户名

    • -P – 数据库用户密码。

    • -S – SQL Server 数据库服务器名称。

    • -y – 从 sqlcmd 实用程序输出的最大列宽度。如果值为 0,则表示列宽度不受限制。

    • -i – 要运行的支持脚本的路径,在本例中为 awsdms_support_collector_sql_server.sql

    • -o – 输出 HTML 文件的路径,文件名由您指定,其中包含收集的数据库配置信息。

    • -d – SQL Server 数据库名称。

  2. 脚本完成后,查看输出的 HTML 文件并删除任何您不愿意分享的信息。当您觉得 HTML 可以分享时,请将该文件上传到您的 AWS Support 案例中。有关上传此文件的更多信息,请参阅使用 AWS DMS 中的诊断支持脚本

对于 Amazon RDS for SQL Server,您无法使用 sqlcmd 命令行实用程序进行连接,因此请使用以下过程。

运行适用于 RDS SQL Server 数据库的脚本
  1. 使用任何允许您以 Master 用户身份连接到 RDS SQL Server 的客户端工具运行脚本,并将输出保存为 HTML 文件。

  2. 您可以查看输出 HTML 文件并删除任何不愿意分享的信息。当您觉得 HTML 可以分享时,请将该文件上传到您的 AWS Support 案例中。有关上传此文件的更多信息,请参阅使用 AWS DMS 中的诊断支持脚本

隐私网站条款Cookie 首选项
© 2025, Amazon Web Services, Inc. 或其附属公司。保留所有权利。