Spiegelung nach einer DDL-Änderung über Management Console wiederaufnehmen

Sie können die Managementkonsole verwenden, um die Spiegelung nach einer DDL-Änderung wiederaufzunehmen.

Informationen zu dieser Task

Hinweis: Die Reihenfolge der Schritte für die Prozedur ist wichtig für den Erfolg der Ausführung.

Vorgehensweise

  1. Beenden Sie alle DML-Aktivitäten für alle Tabellen in der Datenbank, die für die Replikation verwendet werden.

    Dies bedeutet, dass alle Anwendungen gestoppt werden, von denen in Tabellen geschrieben wird. DML-Aktivitäten müssen gestoppt werden, bevor DDL-Änderungen an der Datenbank vorgenommen werden.

  2. Stellen Sie sicher, dass keine offenen Transaktionen für eine Tabelle vorhanden sind, die von einer DDL-Änderung betroffen ist.

    Eine Möglichkeit, um festzustellen, ob offene Transaktionen vorhanden sind, besteht darin, zu prüfen, ob Sperren für die Tabelle vorhanden sind.

    Wenn offene Transaktionen vorhanden sind, sollten Sie sich an Ihren Datenbankadministrator wenden, um die offenen Transaktionen entsprechend zu behandeln, bevor Sie fortfahren.

  3. Replikation für alle aktiven Subskriptionen in der CDC Replication -Instanz beenden
    • Stoppen Sie alle Subskriptionen am Anfang des Protokolls durch kontrolliertes Beenden. Das kontrollierte Beenden muss normal ausgeführt werden - führen Sie die Beendigung nicht unter Verwendung der Option 'Sofort' oder 'Abbrechen' aus und stoppen Sie das Produkt nicht anderweitig während der Sequenz des kontrollierten Beendens. Wenn das kontrollierte Beenden nicht normal ausgeführt wird, muss eine Aktualisierung ausgeführt werden, um den Tabelleninhalt wieder zu synchronisieren.
    • Stellen Sie sicher, dass CDC Replication den Protokollkopf erreicht oder keine Latenz aufweist.
    • Warten Sie, bis die Replikation von allen Subskriptionen beendet wurde; hierin sind auch Subskriptionen eingeschlossen, von denen nur eine Aktualisierung ausgeführt wird.
    1. Klicken Sie auf Überwachung > Subskriptionen.
    2. Wenn die Subskriptionen zur Bearbeitung verfügbar sind, klicken Sie mit der rechten Maustaste auf eine oder mehrere Subskriptionen und wählen Sie Replikation beendenaus.
    3. Wählen Sie je nach Version von CDC Replicationeine der folgenden Optionen aus.
      CDC Replication Version 6.5 oder höher:
      Normal
      CDC Replication schließt laufende Arbeit ab und beendet dann die Replikation. Wenn eine Aktualisierung durchgeführt wird, wird bei Verwendung von Normal die Aktualisierung für die aktuelle Tabelle ausgeführt, bevor die Replikation beendet wird.
      Normal ist die am besten geeignete Option für die meisten Geschäftsanforderungen und ist in den meisten Situationen die bevorzugte Methode zum Beenden der Replikation.
      Sofort
      CDC Replication stoppt alle laufenden Arbeiten und beendet dann die Replikation. Das Starten der Replikation nach Verwendung dieser Option kann länger dauern als bei Verwendung von Normal. Wenn derzeit eine Aktualisierung durchgeführt wird, wird die Aktualisierung für die aktuelle Tabelle unterbrochen und die Replikation anschließend beendet.
      Sie müssen sicherstellen, dass die Protokolle aller abhängigen Quellendatenbanken verfügbar sind, bevor die Replikation unter Verwendung der Option 'Sofort' beendet wird. CDC Replication muss möglicherweise alle abhängigen Quellenprotokolle erneut verarbeiten, wenn Sie die Subskription erneut starten. Wenn CDC Replication gerade eine Transaktion mit langer Laufzeit verarbeitet, wenn Sie die Replikation mit 'Sofort' beenden, muss CDC Replication möglicherweise die Replikation ab der frühesten offenen Transaktion in den Datenbankprotokollen fortsetzen. Verwenden Sie den Befehl dmshowlogdependency, um festzustellen, welche Protokolle erforderlich sind.
      Verwenden Sie diese Option, wenn die Replikation aus geschäftsbezogenen Gründen schneller als bei Verwendung von Normal beendet werden muss; dies hat allerdings zur Folge, dass die Wiederaufnahme der Replikation für die Subskription langsamer ausgeführt wird.
      abort
      CDC Replication stoppt alle laufenden Arbeiten und beendet dann die Replikation schnell. Das Starten der Replikation nach Verwendung dieser Option kann erheblich länger dauern als bei Verwendung der Option Normal. Eine momentan ausgeführte Aktualisierung des Inhalts wird unterbrochen und das Ziel stoppt die Verarbeitung aller Daten, die vor Beendigung der Replikation nicht festgeschrieben werden konnten.
      Sie müssen sicherstellen, dass alle abhängigen Quellendatenbankprotokolle zur Verfügung stehen, bevor Sie die Replikation mit der Option 'Abbrechen' beenden. CDC Replication muss möglicherweise alle abhängigen Quellenprotokolle erneut verarbeiten, wenn Sie die Subskription erneut starten. Wenn CDC Replication momentan eine Transaktion mit langer Laufzeit verarbeitet, wenn die Replikation mit Abbruch beendet wird, muss CDC Replication möglicherweise die Replikation ab der frühesten offenen Transaktion in den Datenbankprotokollen fortsetzen. Verwenden Sie den Befehl dmshowlogdependency, um festzustellen, welche Protokolle erforderlich sind.
      Verwenden Sie diese Option, wenn geschäftsbezogene Gründe ein schnelles Ende der Replikation erforderlich machen und Sie bereit sind, einen viel langsameren Start zu akzeptieren, wenn Sie die Replikation für die Subskription fortsetzen. Eine unvorhergesehene Geschäftsanforderung für einen ungeplanten Systemabschluss Ihres Quellensystems macht die Verwendung dieser Option zur Beendigung der Replikation möglicherweise erforderlich.
      Geplantes Ende
      Mit dieser Option werden alle festgeschriebenen Datenbankänderungen in der Quellendatenbank verarbeitet und die Replikation anschließend am angegebenen Punkt unter Verwendung der Option Normal beendet.
      Jetzt
      Beendet die Replikation zur aktuellen Quellensystemzeit im Quellendatenbankprotokoll. Die Quellensystemzeit, zu der die Replikation beendet wird, wird festgelegt, wenn Sie auf OK klicken.
      Bestimmte/s Datum/Uhrzeit
      Beendet die Replikation mit der Option Normal zum angegebenen Zeitpunkt (Datum und Uhrzeit). CDC Replication zeigt den UTC-Offset (in Minuten) der Quellendatenbank an.
      Bestimmte Protokollposition
      Beendet die Replikation mit der Option Normal an der angegebenen Protokollposition. CDC Replication zeigt das Format der Protokollposition für den Quellendatenspeicher an. Diese Option ist nur für unterstützte Quellendatenspeicher verfügbar.
      Diese Option ist nicht verfügbar, wenn derzeit alle Tabellen in einer Subskription aktualisiert werden.

      CDC Replication Version 6.3:

      Gesteuert
      CDC Replication schließt alle in Bearbeitung befindlichen Operationen ab und wendet anstehende Änderungen auf die Zieltabelle an.
      Sofort
      CDC Replication unterbricht alle laufenden Operationen und wendet anstehende Änderungen nicht auf die Zieltabelle an.
    4. Klicken Sie auf OK.
  4. Ändern Sie die Replikationsmethode für die Tabellenzuordnung in Aktualisieren.

    Dies inaktiviert die zusätzliche Protokollierung für die Informix -Quellentabellen und ermöglicht die Ausführung der DDL.

  5. Wenden Sie die DDL-Änderungen auf alle betroffenen Quellentabellen in der Datenbank an.
  6. Quellentabellendefinitionen aktualisieren
    1. Klicken Sie auf Konfiguration > Subskriptionen.
    2. Wählen Sie das Abonnement aus.
    3. Wählen Sie die zugeordneten Quellen- und Zieltabellen in der Ansicht Tabellenzuordnungen aus.
    4. Klicken Sie mit der rechten Maustaste auf die Tabelle und klicken Sie auf Tabellendefinition aktualisieren > Quellentabelle.

    Dadurch werden die Quellentabellendefinition aktualisiert und die neuen Spalten neu zugeordnet, wenn die Namen übereinstimmen. Der Tabellenstatus wird auf 'Spiegeln/Geparkt' zurückgesetzt.

  7. Die Tabellen befinden sich jetzt möglicherweise in einem Status, in dem davon ausgegangen wird, dass sie anstehende Inplace-Änderungen haben, die behandelt werden müssen, bevor die Tabellen wieder in einen Spiegelungsstatus versetzt werden.
  8. Wenn DDL-Änderungen in der Zielinstanz vorgenommen wurden, aktualisieren Sie die Zieltabellendefinitionen.
    1. Klicken Sie auf Konfiguration > Subskriptionen.
    2. Wählen Sie das Abonnement aus.
    3. Wählen Sie die zugeordneten Quellen- und Zieltabellen in der Ansicht Tabellenzuordnungen aus.
    4. Klicken Sie mit der rechten Maustaste auf die Tabelle und wählen Sie Tabellendefinition aktualisieren > Zieltabelleaus.

    Dadurch werden die Zieltabellendefinition aktualisiert und die neuen Spalten neu zugeordnet, wenn die Namen übereinstimmen. Der Tabellenstatus wird auf 'Spiegeln/Geparkt' zurückgesetzt.

  9. Überprüfen Sie die Tabellenzuordnung auf ihre Richtigkeit.

    Wenn Quellenspalten durch DDL geändert werden, stellen Sie sicher, dass das neue Datenformat in die Zieltabelle übernommen werden kann (zum Beispiel von CHAR(1) in CHAR(10) etc). Dies ist im Bereich Details der Tabellenzuordnungen möglich.

    Ordnen Sie die geänderten Spalten bei Bedarf manuell erneut zu und überprüfen Sie die neuen Zuordnungen. Die CDC Replication -Funktion für automatische Zuordnung ordnet identische Spaltennamen zu. Überprüfen Sie die Zuordnungen und passen Sie sie an Ihre Geschäftsanforderungen an, da die Funktion für automatische Zuordnung ein Best-Effort-Algorithmus ist.

  10. Wenn eine Aktualisierung der Tabelle erforderlich ist oder die Aktualisierung der Tabelle die bevorzugte Methode der Wiederherstellung ist, können Sie die Tabelle für die Aktualisierung markieren und die Aktualisierungsoperation einleiten.
    1. Klicken Sie auf Konfiguration > Subskriptionen.
    2. Wählen Sie das Abonnement aus.
    3. Wählen Sie die zugeordneten Quellen- und Zieltabellen in der Ansicht Tabellenzuordnungen aus.
    4. Klicken Sie mit der rechten Maustaste auf die Tabelle und wählen Sie Für Aktualisierung markierenaus.
    5. Wählen Sie Standardaktualisierungaus.
    6. Klicken Sie auf OK.

    Nachdem die Aktualisierung erfolgreich ausgeführt wurde, kann das Spiegeln für die Subskription erneut gestartet werden; die folgenden Schritte können übersprungen werden, da sie nicht erforderlich sind.

  11. Wenn Sie das Spiegeln erneut starten möchten, ohne die Tabellen zu aktualisieren, müssen Sie das Lesezeichen zurücksetzen.

    Um die Spiegelung an dem Punkt wiederaufzunehmen, an dem sie angehalten wurde, nachdem die DDL-Operation erkannt wurde, muss das Lesezeichen CDC Replication über die Befehlszeilenschnittstelle CDC Replication wie folgt auf den Punkt der zuletzt angewendeten Operation auf dem Ziel zurückgesetzt werden:

    1. Rufen Sie mit dem Befehlszeilendienstprogramm die Lesezeichenposition der letzten angewendeten Transaktion aus dem Ziel ab:
      ./dmshowbookmark -I instance -s source
      Dabei gilt:
      Instanz
      Gibt den Namen der CDC Replication -Instanz an.
      Quelle
      Gibt die Quellen-ID der Subskription an, deren Replikationsposition angefordert werden soll.

      Der Lesezeichenwert wird als Hexadezimalwert zurückgegeben; Beispiel: 00060100000000055C973C4E7D13C8000000010000000000000000055C973C

    2. Legen Sie das Lesezeichen für die Quelleninstanz mit dem Befehlszeilendienstprogramm fest.
      ./dmsetbookmark -I instance -s subscription -a -b hex
      Dabei gilt:
      Instanz
      Gibt den Namen der CDC Replication -Instanz an.
      Subskription
      Gibt den Namen der Subskription an, für die CDC Replication eine Replikationsposition (Lesezeichen) festlegt.
      Hex
      Gibt die Replikationsposition (Lesezeichen) an, die den Punkt im Datenbankprotokoll bestimmt, an dem CDC Replication die Spiegelung wiederaufnehmen soll. Wenn die Spiegelung wiederaufgenommen wird, beginnt CDC Replication mit der Erfassung von Änderungsdaten an der angegebenen Replikationsposition. Die Replikationsposition ist eine hexadezimal codierte Zeichenfolge, die mit dem Befehl dmshowbookmark von der Zielinstanz abgerufen wurde.
  12. Starten Sie die Spiegelung für die Subskriptionen, die aufgrund der DDL-Änderung angehalten wurden.
    1. Klicken Sie auf Überwachung > Subskriptionen.
    2. Wenn die Subskription zur Bearbeitung verfügbar ist, klicken Sie mit der rechten Maustaste auf eine oder mehrere Subskriptionen und wählen Sie Spiegelung startenaus.

      Aktualisierungsdetails wird angezeigt, wenn Sie mindestens eine Tabelle für die Aktualisierung markiert haben; Sie können die Aktualisierungskonfiguration dieser Tabellen anzeigen. Die fortlaufende Spiegelung wird erst gestartet, wenn die Aktualisierung dieser Tabellen abgeschlossen ist.

    3. Wählen Sie die Option Fortlaufend oder Geplantes Ende aus.
    4. Klicken Sie auf OK , damit die Spiegelung gestartet wird.

      Die Spiegelung wird fortgesetzt, bis Sie die Replikation beenden.