この項では、APIを使用してOracle Databaseリリース10.2以上のデータベース・アップグレードをテストする方法について説明します。
リリース10.2以上のデータベースのアップグレードをテストするには、次の手順に従います。
SQLパフォーマンス・アナライザを実行しているシステムで、分析タスクを作成します。
SQLチューニング・セット内のSQL文の実行計画またはテスト実行を行い、アップグレード前のSQL試行を構築します。
次のパラメータを使用して、EXECUTE_ANALYSIS_TASK
プロシージャをコールします。
task_name
パラメータを、実行するSQLパフォーマンス・アナライザのタスクの名前に設定します。
execution_type
パラメータをEXPLAIN PLAN
またはTEST EXECUTE
に設定します。
EXPLAIN PLAN
を使用することを選択した場合、実行計画のみが生成されます。その後の比較では、パフォーマンスの変更に関して結論を出さずに、変更済の計画のリストを生成することのみが可能になります。
TEST EXECUTE
を使用することを選択した場合、SQLワークロードは完了するまで実行されます。これにより、テスト・システムから生成された統計と実行計画を使用して、アップグレード前のSQL試行が効果的に作成されます。ソースでSQL実行計画およびパフォーマンス・データを取得する場合は、より正確な分析を行えるように、TEST EXECUTE
を使用することをお薦めします。
execution_name
パラメータを使用して、実行を識別するための名前を指定します。指定しなかった場合、SQLパフォーマンス・アナライザによってタスク実行の名前が自動的に生成されます。
DATABASE_LINK
タスク・パラメータをDBMS_SQLPA
パッケージのEXECUTE
権限およびテスト・システムのADVISOR
権限を持つユーザーに接続しているパブリック・データベース・リンクのグローバル名に設定します。
次の例では、my_spa_task
というSQLパフォーマンス・アナライザのタスクを実行し、データベース・リンクを介してSQL文のテスト実行をリモートで行います。
EXEC DBMS_SQLPA.EXECUTE_ANALYSIS_TASK(task_name => 'my_spa_task', - execution_type => 'TEST EXECUTE', - execution_name => 'my_remote_trial_10g', - execution_params => dbms_advisor.arglist('database_link', 'LINK.A.B.C.BIZ.COM'));
EXECUTE_ANALYSIS_TASK
プロシージャを使用して、実行計画またはテスト実行を行い、アップグレード後のSQL試行を構築します。
execution_type
パラメータをEXPLAIN PLAN
またはTEST EXECUTE
に設定します。
EXPLAIN PLAN
を使用することを選択した場合、実行計画のみが生成されます。その後の比較では、パフォーマンスの変更に関して結論を出さずに、変更済の計画のリストを生成することのみが可能になります。
TEST EXECUTE
を使用することを選択した場合、SQLワークロードは完了するまで実行されます。これにより、テスト・システムから生成された統計と実行計画を使用して、アップグレード後のSQL試行が効果的に作成されます。ソースでSQL実行計画およびパフォーマンス・データを取得する場合は、より正確な分析を行えるように、TEST EXECUTE
を使用することをお薦めします。
DATABASE_LINK
タスク・パラメータをDBMS_SQLPA
パッケージのEXECUTE
権限およびテスト・システムのADVISOR
権限を持つユーザーに接続しているパブリック・データベース・リンクのグローバル名に設定します。
次の例では、データベース・リンクを介してSQL文のテスト実行をリモートで行います。
EXEC DBMS_SQLPA.EXECUTE_ANALYSIS_TASK(task_name => 'my_spa_task', - execution_type => 'TEST EXECUTE', - execution_name => 'my_remote_trial_12c', - execution_params => dbms_advisor.arglist('database_link', 'LINK.A.B.C.BIZ.COM'));
関連項目:
DBMS_SQLPA.EXECUTE_ANALYSIS_TASK
ファンクションについては、『Oracle Database PL/SQLパッケージおよびタイプ・リファレンス』を参照してください。
DBMS_SQLPA.EXECUTE_ANALYSIS_TASK
ファンクションについては、『Oracle Database PL/SQLパッケージおよびタイプ・リファレンス』を参照してください。