Modifier les métadonnées de base de données

Cette procédure est requise pour empêcher les erreurs de réplication lors de la modification des métadonnées suivantes de la base de données source :

Si ces modifications sont effectuées sans effectuer cette procédure, l'erreur suivante se produit :

2013-05-26 20:10:09  ERROR   OGG-05500  Detected database metadata mismatch between current trail file ./dirdat/_p/v1000000003 and the previous sequence. *DBTIMEZONE: [GMT]/[UTC].

Cette procédure arrête le processus Extract, puis crée un fichier trace (trail). Les nouvelles métadonnées de base de données sont incluses dans ce nouveau fichier avec les transactions qui ont démarré après la modification.

  1. Arrêtez l'activité de transaction sur la base de données source. Les métadonnées ne sont pas encore modifiées dans la base de données.

  2. Sur le système source, exécutez la commande SEND EXTRACT avec l'option LOGEND jusqu'à ce qu'elle indique qu'il n'y a plus de données de journalisation à capturer.

    SEND EXTRACT *group* LOGEND
  3. Arrêtez l'extraction.

    STOP EXTRACT *group*
  4. Sur chaque système cible, exécutez la commande SEND REPLICAT avec l'option STATUS jusqu'à ce qu'elle affiche le statut "At EOF" pour indiquer qu'elle a terminé le traitement de toutes les données de la trace. Cette opération doit être effectuée sur tous les systèmes cible jusqu'à ce que tous les processus Replicat renvoient "At EOF".

    SEND REPLICAT *group* STATUS
  5. Arrêtez les pompes de données et la réplication.

    STOP EXTRACT *group*
    STOP REPLICAT *group*
  6. Modifiez les métadonnées de la base de données.

  7. Sur le système source, exécutez la commande ALTER EXTRACT avec l'option ETROLLOVER pour que le processus Extract principal transfère la trace locale au début d'un nouveau fichier.

    ALTER EXTRACT *group*, ETROLLOVER
  8. Démarrer l'extraction.

    START EXTRACT *group*
  9. Repositionnez les processus Replicat pour qu'ils commencent au nouveau numéro de séquence de trace.

    ALTER REPLICAT *group*, EXTSEQNO *seqno*, EXTRBA *RBA*
  10. Démarrez les processus Replicat.

START REPLICAT *group*