プロシージャ・レプリケーション・プロセスの概要
プロシージャ・レプリケーションは、証跡レコードを使用して十分な情報をレコードとともに確実にカプセル化します。
Oracle GoldenGateのプロシージャ・レプリケーションを使用するには、この機能を有効にする必要があります。この最適化のために有効になっているプロシージャを識別するメカニズムが、Oracle Databaseに組み込まれている必要があります。
PL/SQLプラグマを使用して、レプリケートできるプロシージャを指定します。プラグマを指定すると、入力時にLogminerへのコールバックが実行されてルーチンが終了します。コールバックはプロシージャ・コールの名前と引数を指定し、プロシージャが正常に終了したかエラーで終了したかを示します。Logminerはコールバックからの情報を使用してREDOストリームを拡張します。サポートされるプロシージャの場合、プロシージャによって生成された通常のREDOは抑制され、プロシージャ・コールのみがレプリケートされます。
プロシージャ・レプリケーションを識別するために、新しい証跡レコードが生成されます。この証跡レコードでは、PL/SQLプロシージャに渡す引数に既存の証跡の列データ形式を利用します。LOBの場合、LOBに対する既存の証跡形式と同じようなチャンクとしてデータが渡されます。この証跡レコードには、ターゲットでプロシージャをそのまま再実行するために十分な情報が含まれています。
プロシージャ・レプリケーションを有効にすると、プロシージャによって影響を受ける個々のレコードの証跡ファイルへの書込みができなくなります。
PL/SQLプロシージャの適用時にエラーが発生した場合は、ReplicatがPL/SQLプロシージャ全体を再実行できます。