Désactivation des contraintes sur la cible
Les déclencheurs et les contraintes de cascade doivent être désactivés sur les tables cible ou configurés pour ignorer les modifications apportées par le processus Replicat. Les contraintes doivent être désactivées car Oracle GoldenGate réplique les instructions LMD résultant d'un déclencheur ou d'une contrainte en cascade. Si le même déclencheur ou la même contrainte est activé sur la table cible, il devient redondant en raison de la version répliquée et la base de données renvoie une erreur. Prenons l'exemple suivant, où les tables source sont emp_src et salary_src, et les tables cible emp_targ et salary_targ.
-
Une suppression est émise pour
emp_src. -
Il met en cascade une suppression dans
salary_src. -
Oracle GoldenGate envoie les deux suppressions à la cible.
-
La suppression parent arrive en premier et est appliquée à
emp_targ. -
La suppression parent met en cascade une suppression vers
salary_targ. -
La suppression en cascade de
salary_srcest appliquée àsalary_targ. -
Impossible de localiser la ligne car elle a déjà été supprimée à l'étape 5.