自動的な表ごとのインスタンス化の使用方法
ソース・データベースの場合
Oracle Data Pumpを使用するOracle Databaseで、表ごとのCSNフィルタリングを自動的にインスタンス化して、すべての表が同じSCNに配置されるのを防ぐことができます。
-
ADD TRANDATAおよびADD SCHEMATRANDATAを使用します。ADD TRANDATA/SCHEMATRANDATA.PREPARECSNは、ソースで表を自動的に準備し、Oracle Data Pumpのエクスポート・ダンプ・ファイルにインスタンス化CSNが含まれるようにします。Replicatは、(インポート時に) Oracle Data Pumpによって設定された表ごとのインスタンス化CSNを使用して、証跡レコードをフィルタ処理で除外します。INFO TRANDATAを使用して、表のインスタンス化の準備ができていることと、それが実行されたポイントを確認します。次に、レポート・ファイルのサンプルを示します。2016-09-29 15:30:00 INFO OGG-10154 Schema level PREPARECSN set to mode NOWAIT on schema SCOTT -
ターゲット・データベースでReplicatを停止します。
-
適切な
TABLE文でExtractを起動します。
EXPORT datapumpオプションFLASHBACK_SCNは、表が以前に準備されているため必要ありません。
ターゲット・データベースの場合
-
Oracleデータ・ポンプを使用して、エクスポートされた表をインポートします。これにより、システム表とビューにインスタンス化SCNおよび指定された表データが移入されます。
-
次のいずれかを使用してReplicatを起動します。
Replicatパラメータ・ファイルに
DBOPTIONS ENABLE_INSTANTIATION_FILTERINGパラメータを設定して、表レベルのインスタンス化フィルタリングを有効にします。インスタンス化SCNを超えたすべてのトランザクションがReplicatによって処理されたら、このパラメータを削除できます。
他のすべてのReplicatでは、Replicatパラメータ・ファイルに
DBOPTIONSsource_dbase_nameglobal_nameパラメータを設定します(global_nameは、証跡の取得元のOracleソース・データベースのグローバル名です)。ノート:
ソースに
DOMAINがない場合は、ダウンストリーム・データベースでDOMAINを指定しないでください。Replicatは設定に従って新しいマッピングおよびフィルタ・レコードのインスタンス化SCNを問い合せますたとえば、次のレポート・ファイル出力を参照してください。2015-06-29 17:12:39 INFO OGG-10155 Oracle GoldenGate Delivery for Oracle, r1.prm: Instantiation CSN filtering is enabled on table SCOTT.EMP at CSN 1,851,797.
create tableをselectコマンドまたはRMANとして使用します。ステップは次のとおりです。
-
次のコマンドを使用して、
create tableをat SCN ofパラメータとともに使用します。SET_INSTANTIATION_CSN SCN for object from global_nameたとえば:SET_INSTANTIATION_CSN 1 FOR u1.t1 FROM DBS1.REGRESS.RDBMS.DEV.US.ORACLE.COM - 後でインスタンス化CSNの手動設定を削除する場合は、次のコマンドを使用します。
CLEAR_INSTANTIATION_CSN for object from global_name