選取您的 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 支援案例。如需上傳此檔案的詳細資訊,請參閱在 中使用診斷支援指令碼 AWS DMS

使用 Amazon RDS for SQL Server 時,您無法使用 sqlcmd 命令列公用程式進行連線,因此請使用下列程序。

若要執行 RDS SQL Server 資料庫的指令碼
  1. 使用任何可讓您以 Master 使用者身分連線到 RDS SQL Server 的用戶端工具來執行指令碼,並將輸出儲存為 HTML 檔案。

  2. 檢閱輸出的 HTML 檔案,並移除您不希望分享的任何資訊。當 HTML 可供您共用時,請將檔案上傳至您的 AWS 支援案例。如需上傳此檔案的詳細資訊,請參閱在 中使用診斷支援指令碼 AWS DMS

隱私權網站條款Cookie 偏好設定
© 2025, Amazon Web Services, Inc.或其附屬公司。保留所有權利。