dta ユーティリティを使用してデータベースをチューニングする方法
dta ユーティリティには、データベースのチューニングに使用できるコマンド プロンプト実行可能ファイルが用意されています。このファイルにより、バッチ ファイルやスクリプトでデータベース エンジン チューニング アドバイザ機能を使用できるようになります。dta ユーティリティでは、ワークロードとして、トレース ファイル、トレース テーブル、および Transact-SQL スクリプトが使用されます。また、データベース エンジン チューニング アドバイザ XML スキーマに準拠する XML 入力も使用されます。このスキーマは、この Microsoft Web サイトから入手できます。
dta ユーティリティを使用してワークロードのチューニングを開始する前に、次のことを考慮してください。
ワークロードとしてトレース テーブルを使用する場合、そのテーブルは、データベース エンジン チューニング アドバイザがチューニングを実行するサーバーと同じサーバー上に存在する必要があります。別のサーバーにトレース テーブルを作成した場合は、データベース エンジン チューニング アドバイザでチューニングされているサーバーに移動します。
データベース エンジン チューニング アドバイザのワークロードとしてトレース テーブルを使用する前に、トレースが停止していることを確認してください。データベース エンジン チューニング アドバイザでは、トレース イベントをワークロードとして書き込み中のトレース テーブルには使用できません。
チューニング セッションの実行が予想よりも長く続いている場合、Ctrl キーを押しながら C キーを押してチューニング セッションを停止し、その時点までに dta で完了した分析に基づいて推奨設定を作成できます。この操作を行うと、推奨設定を作成するかどうかを確認するメッセージが表示されます。推奨設定を作成せずにチューニング セッションを停止するには、もう一度、Ctrl キーを押しながら C キーを押します。
dta ユーティリティの構文と使用方法の例の詳細については、「dta ユーティリティ」を参照してください。
dta ユーティリティの既定の設定を使用してデータベースをチューニングするには
解析時に、データベース エンジン チューニング アドバイザによって追加、削除、または保有を検討するデータベースの機能 (インデックス、インデックス付きビュー、パーティション分割) を決定します。詳細については、「ワークロードについて」および「データベース エンジン チューニング アドバイザの使用に関する注意点」を参照してください。
ワークロードを作成します。詳細については、「ワークロードを作成する方法」を参照してください。
コマンド プロンプトで、次のコマンドを入力します。
dta -E -D DatabaseName -if WorkloadFile -s SessionName
このコマンドの -E はチューニング セッションで (ログイン ID とパスワードではなく) 信頼関係接続を使用することを指定し、-D はチューニングするデータベースの名前を指定します。既定では、このユーティリティは、ローカル コンピュータ上の MicrosoftSQL Server の既定のインスタンスに接続されます (リモート データベースを指定したり、名前付きインスタンスを指定したりするには、次の手順で示すように -S オプションを使用します)。-if オプションは、ワークロード ファイル (Transact-SQL スクリプトまたはトレース ファイルが使用可能) の名前とファイル パスを指定し、-s はチューニング セッションの名前を指定します。
ここで示した 4 つのオプション (データベース名、ワークロード、接続の種類、およびセッション名) は必ず指定する必要があります。
リモート データベースまたは名前付きインスタンスを一定時間チューニングするには
解析時に、データベース エンジン チューニング アドバイザによって追加、削除、または保有を検討するデータベースの機能 (インデックス、インデックス付きビュー、パーティション分割) を決定します。詳細については、「ワークロードについて」および「データベース エンジン チューニング アドバイザの使用に関する注意点」を参照してください。
ワークロードを作成します。詳細については、「ワークロードを作成する方法」を参照してください。
コマンド プロンプトで、次のコマンドを入力します。
dta -S ServerName\Instance -D DatabaseName -it WorkloadTableName -U LoginID -P Password -s SessionName -A TuningTimeInMinutes
このコマンドの -S はリモート サーバー名とインスタンス (またはローカル サーバー上の名前付きインスタンス) を指定し、-D はチューニングするデータベースの名前を指定します。-it オプションはワークロード テーブル名を指定し、-U および -P はリモート データベースに対するログイン ID とパスワードを指定します。また、-s はチューニング セッション名を指定し、-A はチューニング セッションの継続時間を分単位で指定します。既定では、dta ユーティリティのチューニング時間は 8 時間に設定されています。データベース エンジン チューニング アドバイザによるワークロードのチューニング時間を無制限にする場合は、-A オプションを使用して 0 (ゼロ) を指定します。
XML 入力ファイルを使用してデータベースをチューニングするには
解析時に、データベース エンジン チューニング アドバイザによって追加、削除、または保有を検討するデータベースの機能 (インデックス、インデックス付きビュー、パーティション分割) を決定します。詳細については、「ワークロードについて」および「データベース エンジン チューニング アドバイザの使用に関する注意点」を参照してください。
ワークロードを作成します。詳細については、「ワークロードを作成する方法」を参照してください。
XML 入力ファイルを作成します。詳細については、「XML 入力ファイルを作成する方法」を参照してください。
コマンド プロンプトで、次のコマンドを入力します。
dta -E -S ServerName\Instance -s SessionName -ix PathToXMLInputFile
このコマンドの -E は信頼関係接続を指定し、-S はリモート サーバーとインスタンス、またはローカル サーバー上の名前付きインスタンスを指定します。また、-s はチューニング セッション名を指定し、-ix はチューニング セッションで使用する XML 入力ファイルを指定します。
ワークロードのチューニングが完了した後、データベース エンジン チューニング アドバイザのグラフィカル ユーザー インターフェイス (GUI) を使用して、チューニング セッションの結果を参照できます。また、代替手段として、-ox オプションを使用してチューニングの推奨設定を XML ファイルに書き込むように指定することもできます。詳細については、「dta ユーティリティ」を参照してください。