Oracle® Fusion Middleware Oracle GoldenGateリファレンスfor Windows and UNIX 12c (12.2.0.1) E70112-04 |
|
前 |
次 |
適用対象
Replicat (統合Replicatモードではサポートされない)
説明
MAXTRANSOPS
パラメータでは、大きなソース・トランザクションを小さく分割してターゲット・システムに送信します。このパラメータは、ターゲット・データベースが大きなトランザクションに対応するように構成されていないときに使用できます。たとえば、ターゲットのOracleロールバック・セグメントが百万の削除を実行するソース・トランザクションを再作成できるほど大きくない場合にMAXTRANSOPS 10000
を指定すると、Replicatは各10,000削除グループの後にコミットを発行できます。
MAXTRANSOPS
を使用すると、Replicatは正しい順番で操作を適用しますが、ソース・アプリケーションによって課せられたトランザクション境界が変更されます。このため、そのトランザクション中にExtractが失敗すると、エラーが発生することがあります。Extractは古いトランザクションに上書きするかわりに、トレイルの最後にトランザクションを再び書き込みます。トレイルは順次形式であるため、Replicatは古いトランザクションの処理を開始しますが、リカバリ・マーカーと新しいトランザクションを受け取ると、ロールバックしてから新しいトランザクションの適用を開始する必要があります。MAXTRANSOPS
によってReplicatが元のトランザクションを複数の小さなトランザクションに分割していた場合、Replicatは、ターゲットにコミットされなかった部分しかロールバックできないことがあります。Replicatがコミット済操作をもう一度処理した場合、SQL操作のタイプに応じて、行重複エラーまたは紛失エラーが発生します。
注意:
Replicatの異常終了エラーをトラブルシューティングする際、GROUPTRANSOPS
を1に、MAXTRANSOPS
を1に設定するようOracleサポートから求められる場合があります。これは単にトラブルシューティングのための一時的な構成で、本番環境で常時使用しないでください。そうしないと、データ整合性のエラーになります。
デフォルト
10,000,000
例
MAXTRANSOPS 10000