RESTART REPLICAT
Mit RESTART REPLICAT können Sie eine Replicat-Gruppe stoppen und dann starten. Um zu bestätigen, dass Replicat gestartet wurde, verwenden Sie den Befehl INFO REPLICAT oder STATUS REPLICAT.
Normaler Startpunkt
Replicat kann bei seinem normalen Startpunkt (von anfänglichen oder aktuellen Checkpoints) oder von einer alternativen, vom Benutzer angegebenen Position im Trail gestartet werden.
RESTART REPLICAT ohne Optionen führt dazu, dass Replicat mit der Verarbeitung bei einem der folgenden Punkte beginnt, um die Datenintegrität aufrecht zu erhalten:
-
Nach der ordnungsgemäßen oder anormalen Beendigung: Bei der ersten nicht verarbeiteten Transaktion im Trail aus der vorherigen Ausführung (durch den aktuellen Lese-Checkpoint dargestellt).
-
Erster Start nach Erstellung der Gruppe: Ab Anfang der aktiven Traildatei (
seqno 0,rba 0).
Alternativer Startpunkt
Mit den Optionen SKIPTRANSACTION, ATCSN und AFTERCSN von START REPLICAT wird Replicat als Ganzes oder von bestimmten Threads eines koordinierten Replicats bei einer anderen Transaktion im Trail als dem normalen Startpunkt gestartet. Mit diesen Optionen können Sie folgende Aktionen ausführen:
-
Geben Sie eine logische Recovery-Position an, wenn ein Fehler die weitere Replicat-Verarbeitung im Trail verhindert. Die Position kann so festgelegt werden, dass Replicat die betreffenden Transaktionen überspringt, auch wenn die Daten dann nicht auf das Ziel angewendet werden.
-
Überspringen Sie replizierte Transaktionen, die zu Fehlern aufgrund von doppelten oder fehlenden Datensätzen führen, nachdem ein Backup beim anfänglichen Laden auf das Ziel angewendet wurde. Mit diesen Optionen verwirft Replicat Transaktionen, die vor den letzten im Backup erfassten Änderungen aufgetreten sind. Sie können den Wert der Serien-ID, die dem Abschluss des Backups entspricht, einem CSN-Wert zuordnen und Replicat dann neu starten, um Transaktionen ab der angegebenen CSN anzuwenden.
Syntax
RESTART REPLICAT group_name_wildcard
[SKIPTRANSACTION | {ATCSN csn | AFTERCSN csn}]
[FILTERDUPTRANSACTIONS | NOFILTERDUPTRANSACTIONS]
[THREADS (threadID[, threadID][, ...][, thread_range[, thread_range][, ...]])]
group_name_wildcard
Der Name einer Replicat-Gruppe oder ein Platzhalter (*) zur Angabe mehrerer Gruppen. Beispiel: Mit T* werden alle Replicat-Gruppen gestartet, deren Namen mit T beginnen.
SKIPTRANSACTION
Damit überspringt Replicat die erste Transaktion nach der erwarteten Startposition im Trail. Alle Vorgänge ab dieser ersten Transaktion sind ausgeschlossen.
Wenn Sie auch den Parameter MAXTRANSOPS für dieses Replicat verwendet, kann die Traildatei an einer Stelle inmitten einer Transaktion gelesen werden. In diesem Fall wird der Rest der Teiltransaktion übersprungen, und Replicat setzt die normale Verarbeitung ab dem nächsten Begin-Transaktionsdatensatz in der Datei fort. Die übersprungenen Datensätze werden in die Discard-Datei geschrieben, wenn der Parameter DISCARDFILE verwendet wird. Andernfalls wird eine Meldung wie die folgende in die Berichtsdatei geschrieben:
User requested START SKIPTRANSACTION. The current transaction will be skipped. Transaction ID txid, position Seqno seqno, RBA rba
SKIPTRANSACTION ist nur gültig, wenn der Trail, der aus diesem Replicat gelesen wird, Teil einer Konfiguration zur Onlinesynchronisation von Änderungen (mit Checkpoint) ist. Nicht gültig für anfängliche Ladevorgänge mit Aufgabentypen (bei denen SPECIALRUN mit ADD REPLICAT verwendet wird).
ATCSN csn |
AFTERCSN csn |
Legt einen benutzerdefinierten Startpunkt bei einer bestimmen CSN fest. Wenn ATCSN oder AFTERCSN verwendet wird, wird eine Meldung wie die Folgende in die Berichtsdatei geschrieben:
User requested start at commit sequence number (CSN) csn-string
User requested start after commit sequence number (CSN) csn-string
Allgemeine Informationen zu diesen Optionen:
-
Nur gültig, wenn der Trail, der von diesem Replicat gelesen wird, Teil einer Konfiguration zur Onlinesynchronisierung von Änderungen (mit Checkpoints) ist. Nicht gültig für anfängliche Ladevorgänge mit Aufgabentypen (bei denen
SPECIALRUNmitADD REPLICATverwendet wird). -
Um den Start bei oder nach einer CSN zu unterstützen, muss der Trail von Oracle GoldenGate Version 10.0.0 oder höher stammen, da die CSN im ersten Traildatensatz jeder Transaktion gespeichert wird. Wenn Replicat mit
AFTERCSNfür eine frühere Trailversion gestartet wird, wird Replicat anormal beendet und ein Fehler in den Bericht geschrieben, dass das Trailformat nicht unterstützt wird.ATCSNDamit wird die Replicat-Verarbeitung bei der Transaktion mit der angegebenen CSN gestartet. Alle Transaktionen im Trail mit CSN-Werten unter dem angegebenen Wert werden übersprungen.
AFTERCSNDamit wird die Replicat-Verarbeitung bei der Transaktion gestartet, die nach der Transaktion mit der angegebenen CSN stattfand. Alle Transaktionen im Trail mit CSN-Werten kleiner oder gleich dem angegebenen Wert werden übersprungen.
csnGibt einen CSN-Wert an. Geben Sie den CSN-Wert in dem für die Datenbank gültigen Format ein. CSN-Formate und -Beschreibungen finden Sie unter Commit Sequence Number (CSN). Wenn das Format ungültig ist, wird Replicat anormal beendet, und eine Meldung wird in die Berichtsdatei geschrieben.
Sie können die CSN, die nach Abschluss eines anfänglichen Ladevorgangs anzugeben ist, mit der Commit-ID bestimmen, bei der das Ladeutility den Ladevorgang abgeschlossen hat. Befolgen Sie andernfalls die Anweisungen in der Prozedur für das anfängliche Laden, um den Startpunkt für Replicat zu bestimmen.
FILTERDUPTRANSACTIONS | NOFILTERDUPTRANSACTIONS
Dadurch ignoriert Replicat bereits verarbeitete Transaktionen. Verwenden Sie diese Funktion, wenn Extract an einem neuen Startpunkt positioniert wurde (siehe die Option ATCSN oder AFTERCSN von "START EXTRACT") und Sie sicher sind, dass doppelte Transaktionen im Trail vorhanden sind, die zu einer anormalen Replicat-Ende führen könnten. Für diese Option müssen Sie eine Checkpoint-Tabelle verwenden. Bei Oracle-Datenbanken ist diese Option nur für Replicat im nicht integrierten Modus gültig. Falls Sie den integrierten Modus und die automatische Neugenerierung von Zieltraildateien verwenden, verarbeitet der integrierte Modus die doppelten Transaktionen transparent. Der Standardwert ist FILTERDUPTRANSACTIONS.
THREADS thread_list
Gültig für SKIPTRANSACTION, ATCSN und AFTERCSN, wenn Replicat im koordinierten Modus ausgeführt wird. Nicht gültig für RESTART REPLICAT ohne diese Optionen. Startet die angegebenen Replicat-Threads an der angegebenen Stelle.
thread_list
Eine durch Komma getrennte Liste mit Bereichen im Format threadIDlow-threadIDhigh, threadIDlow-threadIDhigh.
!
(Ausrufezeichen) Startet Replicat sofort neu. Die Transaktion wird gestoppt.
Beispiele
RESTART REPLICAT finance
Der folgende Befehl startet Replicat bei einer spezifischen CSN.
RESTART REPLICAT finance, ATCSN 6488359
Mit dem folgenden Befehl wird die erste Transaktion nach dem letzten Checkpoint beim Start von Replicat bei Threads 4 und 5 eines koordinierten Replicats übersprungen. Bei einem koordinierten Replicat mit 10 Threads werden Threads 0 bis 3 und 6 bis 10 am normalen Startpunkt (dem des letzten Checkpoints) gestartet.
RESTART REPLICAT fin SKIPTRANSACTION THREADS (4-5)
Mit dem folgenden Befehl werden Threads 1 bis 3 eines koordinierten Replicats bei CSN 6488359 gestartet und Threads 9 bis 10 nach CSN 6488360. Außerdem wird die erste Transaktion nach dem letzten Checkpoint bei Threads 7 und 8 übersprungen.
RESTART REPLICAT fin ATCSN 6488359 THREADS (1-3), AFTERCSN 6488360 THREADS (9-10), SKIPTRANSACTION THREADS (7,8)