ALLOWNONVALIDATEDKEYS
Durée de validité
GLOBALS
Description
Utilisez ALLOWNONVALIDATEDKEYS pour autoriser les commandes Extraire, Répliquer et Admin Client à utiliser une clé primaire non validée ou une clé non valide comme identificateur unique. Ce paramètre remplace les critères de sélection de clé utilisés par Oracle GoldenGate. Lorsqu'elle est activée, Oracle GoldenGate utilise les clés primaires NON VALIDATED et NOT VALID comme identificateur unique.
Une clé peut devenir non valide à la suite d'une réorganisation d'objet ou d'un certain nombre d'autres actions, mais si vous savez que les clés sont valides, ALLOWNONVALIDATEDKEYS enregistre le temps d'arrêt de leur revalidation, en particulier dans un environnement de test. Toutefois, lorsque vous utilisez ALLOWNONVALIDATEDKEYS, que ce soit en cours de test ou en production, vous acceptez le risque que les données cible ne soient pas gérées correctement via la réplication. Si une clé s'avère non valide et que la table sur laquelle elle est définie contient plusieurs enregistrements avec la même valeur de clé, Oracle GoldenGate peut choisir la mauvaise ligne cible à mettre à jour.
Pour activer ALLOWNONVALIDATEDKEYS dans une configuration où la réplication DDL n'est pas active, arrêtez tous les processus, ajoutez ALLOWNONVALIDATEDKEYS au fichier de paramètres GLOBALS, puis redémarrez les processus. Pour désactiver à nouveau ALLOWNONVALIDATEDKEYS, enlevez-le du fichier GLOBALS, puis redémarrez les processus.
Pour activer la fonctionnalité ALLOWNONVALIDATEDKEYS dans une configuration où la prise en charge de DDL est active, procédez comme suit.
-
Ajoutez le paramètre
ALLOWNONVALIDATEDKEYSau fichier de paramètresGLOBALS. -
Mettez à jour la table
GGS_SETUPdans le schémaDDLà l'aide du code SQL suivant.
UPDATE <owner>.GGS_SETUP SET value='1' WHERE property='ALLOWNONVALIDATEDKEYS';
COMMIT;
- Redémarrez tous les processus Oracle GoldenGate, y compris Manager. A partir de ce moment, Oracle GoldenGate sélectionne les clés primaires non validées ou non comme identificateur unique.
Pour désactiver la fonctionnalité ALLOWNONVALIDATEDKEYS lorsque la prise en charge de DDL est active, procédez comme suit.
-
Enlevez
ALLOWNONVALIDATEDKEYSdu fichier de paramètresGLOBALS. -
Mettez à jour l'enregistrement que vous avez ajouté à la table
GGS_SETUPvers0.UPDATE owner.GGS_SETUP SET value='0' WHERE property='ALLOWNONVALIDATEDKEYS'; COMMIT;Redémarrez tous les processus Oracle GoldenGate.
Valeur par défaut
Aucun (désactivé)
Syntaxe
ALLOWNONVALIDATEDKEYS