Constraints für das Ziel deaktivieren
Trigger und Kaskadierungs-Constraints müssen in den Zieltabellen deaktiviert oder so konfiguriert werden, dass von Replicat vorgenommene Änderungen ignoriert werden. Constraints müssen deaktiviert werden, da Oracle GoldenGate DML repliziert, die sich aus einem Trigger oder einem Kaskaden-Constraint ergibt. Wenn derselbe Trigger oder Constraint in der Zieltabelle aktiviert wird, wird er aufgrund der replizierten Version redundant, und die Datenbank gibt einen Fehler zurück. Betrachten Sie das folgende Beispiel, bei dem die Quelltabellen emp_src und salary_src und die Zieltabellen emp_targ und salary_targ sind.
-
Ein Löschvorgang wird für
emp_srcausgeführt. -
Ein Löschvorgang wird in
salary_srckaskadiert. -
Oracle GoldenGate sendet beide Löschvorgänge an das Ziel.
-
Der übergeordnete Löschvorgang kommt zuerst an und wird auf
emp_targangewendet. -
Der übergeordnete Löschvorgang kaskadiert einen Löschvorgang in
salary_targ. -
Der kaskadierte Löschvorgang aus
salary_srcwird aufsalary_targangewendet. -
Die Zeile kann nicht gefunden werden, da sie bereits in Schritt 5 gelöscht wurde.