Precise Instantiation for Db2 LUW
During the initialization of the Oracle GoldenGate environment for Db2 LUW, you need to perform initial data synchronization and start Oracle GoldenGate processes for the first time. In conjunction with these procedures, you need to create process groups. To create an Extract group, an initial start position must be established in the transaction log. This initial read position is on a transaction boundary that is based on one of the following:
-
End of the transaction file
-
A specific LRI value
The start point is specified with the BEGIN
option
of the ADD EXTRACT
command.
When the Extract process starts for the first time, it captures all the transaction data that it encounters after the specified start point, but none of the data that occurred before that point. This can cause partial transactions to be captured if open transactions span the start point.
To ensure initial transactional consistency:Initialize the Extract process at a point in time
when the database is in a paused state to avoid the capture of partial transactions.
Db2 LUW provides a QUIESCE
command for such a purpose. This is the
only way to ensure transactional consistency.
Note:
After the Extract is past the initialization, subsequent restarts of the Extract do not extract partial transactions, because the process uses recovery checkpoints to mark its last read position.
IBM provides a utility called
db2pd
for monitoring Db2 databases and instances. You can use
it to view information about open transactions and to determine if any of them span
the start point. However, because Db2 LUW log records lack timestamps, it might not
be possible to make an accurate assessment. If possible, quiesce the database prior
to initialization of Oracle GoldenGate.