SQL Server 診断 Support スクリプト - AWS データベース移行サービス

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

SQL Server 診断 Support スクリプト

以下は、オンプレミスまたは 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) を使用してパスワード認証する on-prem-user など新しい SQL Server アカウントを作成します。

  2. SSMS の[User Mappings] (ユーザーマッピング)セクションで、MSDBMASTER データベース (公開許可を付与します) を選択し、すくリプを実行するデータベースに DB_OWNER ロールを割り当てます。

  3. 新しいアカウントのコンテキストメニュー (右クリック) を開き、[Security] (セキュリティ) を選択して 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) を使用してパスワード認証する rds-user など新しい SQL Server アカウントを作成します。

  2. SSMS の [ユーザーマッピング] セクションで、[MSDB] データベース (パブリックアクセス権限を付与) を選択して、スクリプトを実行するデータベースに DB_OWNER ロールを割り当てます。

  3. 新しいアカウントのコンテキストメニュー (右クリック) を開き、[Security] (セキュリティ) を選択して 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 診断サポートスクリプトは、SQL Server 2014 以降のバージョンでのみ実行します。

このスクリプトは、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. RDS SQL Server に Master ユーザーとして接続できる任意のクライアント ツールを使用して、スクリプトを実行し、出力を HTML ファイルとして保存します。

  2. 出力 HTML ファイルを確認し、共有しにくい情報をすべて削除します。HTML の共有に納得できたら、ファイルを AWS Support ケースにアップロードします。ファイルのアップロードの詳細については、「AWS DMS での診断サポート スクリプトの操作」をご参照ください。