別のシステムへの自動ワークロード・リポジトリ・データの転送
Oracle Databaseでは、システム間でAWRデータを転送できます。これは、別のシステムを使用してAWRデータの分析を実行し、本番システムのパフォーマンス分析によるオーバーヘッドを削減する場合に有効です。
システム間でAWRデータを転送するには、最初にソース・システムのデータベースからAWRデータをエクスポートし、次にそのデータをターゲット・システムのデータベースにインポートします。
この項では、次の項目について説明します。
AWRデータのエクスポート
awrextr.sqlスクリプトは、一定範囲のスナップショットに対応するAWRデータをデータベースからデータ・ポンプ・エクスポート・ファイルにエクスポートします。作成されたら、エクスポートしたAWRデータをインポートできる別のデータベースに、このダンプ・ファイルを転送できます。awrextr.sqlスクリプトを実行するには、SYSユーザーとしてデータベースに接続する必要があります。
AWRデータをエクスポートするには:
-
SQLプロンプトで次のように入力します。
@$ORACLE_HOME/rdbms/admin/awrextr.sql
AWRスキーマのデータベースのリストが表示されます。
-
AWRデータをエクスポートするデータベースを指定します。
Enter value for db_id: 1377863381
この例では、
1377863381というデータベース識別子を持つデータベースが指定されます。 -
すべてのスナップショットIDを表示する日数を指定します。
Enter value for num_days: 2
この例では、最近2日間に取得されたすべてのスナップショットが表示されます。
-
最初と最後のスナップショットIDを指定して、AWRデータをエクスポートするスナップショットの範囲を定義します。
Enter value for begin_snap: 30 Enter value for end_snap: 40
この例では、スナップショットID 30が最初のスナップショットとして指定され、スナップショットID 40が最後のスナップショットとして指定されます。
ディレクトリ・オブジェクトのリストが表示されます。
-
エクスポート・ダンプ・ファイルを保存するディレクトリを示すディレクトリ・オブジェクトを指定します。
Enter value for directory_name: DATA_PUMP_DIR
この例では、ディレクトリ
ORACLE_HOME/rdbms/logを指すディレクトリ・オブジェクトDATA_PUMP_DIRが指定されています。ORACLE_HOMEは/u01/app/oracle/product/database_release_number/dbhome_1です。 -
エクスポート・ダンプ・ファイルの名前をファイル拡張子なしで指定します。デフォルトでは、ファイル拡張子
.dmpが使用されます。Enter value for file_name: awrdata_30_40
この例では、
awrdata_30_40.dmpという名前のエクスポート・ダンプ・ファイルが、ディレクトリ・オブジェクトDATA_PUMP_DIRで指定されたディレクトリに作成されます。Dump file set for SYS.SYS_EXPORT_TABLE_01 is: /u01/app/oracle/product/database_release_number/dbhome_1/rdbms/log/awrdata_30_40.dmp Job "SYS"."SYS_EXPORT_TABLE_01" successfully completed at 08:58:20エクスポートする必要のあるAWRデータの分量によっては、AWRエクスポート操作の完了までにしばらく時間がかかる場合があります。ダンプ・ファイルが作成されたら、データ・ポンプを使用してそのファイルを別のシステムに転送できます。
関連項目:
データ・ポンプの使用については、『Oracle Databaseユーティリティ』を参照してください。
AWRデータのインポート
エクスポート・ダンプ・ファイルをターゲット・システムに転送したら、awrload.sqlスクリプトを使用してエクスポートされたAWRデータをインポートします。awrload.sqlスクリプトにより、スナップショット・データをデータ・ポンプ・ファイルからデータベースに転送するためのステージング・スキーマが作成されます。次に、データはステージング・スキーマから適切なAWR表に転送されます。awrload.sqlスクリプトを実行するには、SYSユーザーとしてデータベースに接続する必要があります。
AWRデータをインポートするには:
-
SQLプロンプトで次のように入力します。
@$ORACLE_HOME/rdbms/admin/awrload.sql
ディレクトリ・オブジェクトのリストが表示されます。
-
エクスポート・ダンプ・ファイルが含まれるディレクトリを示すディレクトリ・オブジェクトを指定します。
Enter value for directory_name: DATA_PUMP_DIR
この例では、エクスポート・ダンプ・ファイルが存在するディレクトリを指すディレクトリ・オブジェクト
DATA_PUMP_DIRが指定されています。 -
エクスポート・ダンプ・ファイルの名前をファイル拡張子なしで指定します。デフォルトでは、ファイル拡張子
.dmpが使用されます。Enter value for file_name: awrdata_30_40
この例では、
awrdata_30_40.dmpという名前のエクスポート・ダンプ・ファイルが選択されています。 -
AWRデータは、まず現行ユーザーの一連の一時表にインポートされ、次に
SYSスキーマ内のAWR表に転送されます:Processing object type TABLE_EXPORT/TABLE/CONSTRAINT/CONSTRAINT Completed 113 CONSTRAINT objects in 11 seconds Processing object type TABLE_EXPORT/TABLE/CONSTRAINT/REF_CONSTRAINT Completed 1 REF_CONSTRAINT objects in 1 seconds Job "SYS"."SYS_IMPORT_FULL_03" successfully completed at 09:29:30 ... Dropping AWR_STAGE user End of AWR Load
インポートする必要のあるAWRデータの分量によっては、AWRインポート操作の完了までにしばらく時間がかかる場合があります。AWRデータのインポート後に、それらの一時表は自動的に削除されます。