Utiliser Oracle Data Pump pour l'instanciation automatique par table

Oracle GoldenGate utilise l'utilitaire Oracle Data Pump pour créer des instances d'un schéma, d'une table et d'un utilisateur pour Oracle AI Database. Il fonctionne en déchargeant les données et les métadonnées dans un ensemble de fichiers du système d'exploitation appelés ensemble de fichiers de vidage.

Cette méthode utilise l'utilitaire Oracle Data Pump pour établir les données cible. Pour exécuter cette méthode, vous lancez le processus Extract, les pompes de données, et effectuez une réplication au niveau du SCN auquel la copie s'est arrêtée. Les transactions incluses dans la copie sont ignorées afin d'éviter les collisions résultant de violations d'intégrité. A partir du point de départ du processus, Oracle GoldenGate gère la synchronisation des données.

Aucun processus Oracle GoldenGate de chargement initial n'est requis pour cette méthode.

Vous pouvez instancier automatiquement le filtrage CSN par table pour Oracle AI Database avec Oracle Data Pump, ce qui évite que toutes vos tables aient le même numéro SCN.

Sur la base de données source

  1. Utilisez ADD TRANDATA et ADD SCHEMATRANDATA. ADD TRANDATA/SCHEMATRANDATA.PREPARECSN prépare automatiquement les tables à la source afin que le fichier dump d'export Oracle Data Pump inclue des CSN d'instanciation. La réplication utilise le CSN d'instanciation par table défini par Oracle Data Pump (lors de l'import) pour retirer par filtrage les enregistrements de trace.

    Utilisez INFO TRANDATA pour vous assurer que votre table est prête pour l'instanciation et à quel moment elle a été effectuée. Voici un exemple de fichier de rapport :

    2025-09-29 15:30:00 INFO OGG-10154 Schema level PREPARECSN set to mode NOWAIT on schema
          hr
  2. Arrêtez le processus Replicat sur la base de données cible.

  3. Démarrez l'extraction avec l'instruction TABLE correcte.

L'option EXPORT datapump FLASHBACK_SCN n'est pas nécessaire car les tables ont été préparées précédemment.

Dans la base de données cible 1. Importez les tables exportées à l'aide d'Oracle Data Pump, qui alimente les tables et les vues système avec des SCN d'instanciation, ainsi que les données de table indiquées.

  1. Démarrez la réplication à l'aide de l'une des méthodes suivantes :

    Définissez le paramètre DBOPTIONS ENABLE_INSTANTIATION_FILTERING dans le fichier de paramètres de réplication pour activer le filtrage d'instanciation au niveau de la table.

    Vous pouvez enlever ce paramètre lorsque le processus de réplication a traité toutes les transactions au-delà du SCN d'instanciation.

    Pour tous les autres processus Replicat, définissez le paramètre DBOPTIONS source_dbase_name global_name dans le fichier de paramètres Replicat, où global_name est le nom global de la base de données source Oracle d'où provient la trace. Remarque : lorsque la source n'a pas de valeur DOMAIN, n'indiquez pas de valeur DOMAIN pour la base de données en aval.

Replicat queries the instantiation SCN on any new mapping and filter records accordingly. For example, see the following report file output:

<pre class="copy"><code>2025-06-29 17:12:39 INFO OGG-10155 Oracle GoldenGate Delivery for Oracle, r1.prm: Instantiation CSN filtering is enabled on table HR.EMPLOYEES at CSN 1,851,797.</code></pre>

Vous pouvez également utiliser d'autres méthodes d'instanciation au lieu d'utiliser Data Pump pour exporter et importer des tables. L'une de ces méthodes consiste à utiliser create table en tant que commande select ou RMAN. Les étapes sont les suivantes : 1. Utilisez create table avec un paramètre at SCN of à l'aide de la commande suivante :

`SET_INSTANTIATION_CSN SCN for object from global_name`

For example:

<pre class="copy"><code>SET_INSTANTIATION_CSN 1 FOR u1.t1 FROM DBS1.REGRESS.RDBMS.DEV.US.ORACLE.COM</code></pre>
  1. Si vous voulez supprimer le paramètre manuel du CSN d'instanciation ultérieurement, vous pouvez utiliser la commande suivante :

    CLEAR_INSTANTIATION_CSN for *object* from *global_name*