syncreplica

Exportiert oder importiert Aktualisierungspakete

Anwendbarkeit

Produkt Befehlstyp
MultiSite Unterbefehl "multiutil"
Plattform
UNIX
Windows

Übersicht

  • Aktualisierungspaket exportieren:
    sync/replica

    –exp/ort
    [–cl/an clanname ] [ –site sitename ] –fam/ily familienname
    –u/ser benutzername [–p/assword ]  kennwort [–max/size max-paketgröße
    [–lim/it anzahl-pakete ] ]
    {     { –sh/ip| –fsh/ip }
    –wor/kdir verzeichnis [ –sc/lass speicherklasse ]
    [–pex/pire datum ]
    [–not/ify e-mail ]
    | –out { pname-der-paketdatei | pname-des-zwischenspeicherungsbereichs } }
    replikat...

  • Aktualisierungspaket importieren:
    sync/replica

    –imp/ort
    [–cl/an clanname ] [ –site sitename ] –fam/ily familienname
    –u/ser benutzername [ –p/assword] kennwort
    { –rec/eive[ –sc/lass speicherklasse ]
    | { pname-der-paketdatei | pname-des-zwischenspeicherungsbereichs } ... }
    [ -plug/epoch ]

Beschreibung

Die Synchronisation eines Replikats mit mindestens einem gleichgeordneten Replikat ist ein Prozess in drei Phasen:

  1. Auf einer bestimmten Site erstellt der Befehl syncreplica –export ein Aktualisierungspaket mit Änderungen, die in dem Replikat auf dieser Site (und möglicherweise auch in anderen Replikaten) vorgenommen wurden.
  2. Das Paket wird an eine oder mehrere andere Sites gesendet.
  3. Auf einer anderen Site wendet der Befehl syncreplica –import die Änderungen im Aktualisierungspaket auf das zugehörige Replikat derselben Datenbank an. Dieser Schritt wird auf allen Sites ausgeführt, die das Paket empfangen.

Inhalt eines Aktualisierungspakets:

  • Alle Änderungen, die seit der letzten für die Zielreplikate generierten Aktualisierung im aktuellen Replikat vorgenommen wurden. (Bereits an die Zielreplikate gesendete Änderungen sind aus dem Paket ausgeschlossen).
  • In anderen Replikaten vorgenommene Änderungen, die das aktuelle Replikat im Rahmen früherer Aktualisierungspakete von diesen Replikaten empfangen hat, die aber noch nicht an die Zielreplikate weitergeleitet wurden.

In allen Fällen erstellt syncreplica –export ein logisches Aktualisierungspaket, das von allen angegebenen Zielreplikaten verwendet wird; das Paket kann nur zur Aktualisierung dieser Replikate verwendet werden.

Anmerkungen zur Exportphase

MultiSite wurde für die effiziente Aktualisierung von Replikaten konzipiert. syncreplica –export versucht, bereits gesendete Operationen auszuschließen. Es ist allerdings unproblematisch, eine Operation mehrere Male an ein Replikat zu senden; die erste Operation wird importiert, und nachfolgende Operationen werden ignoriert.

syncreplica –export speichert temporäre Dateien in dem Verzeichnis, das mit der Option –workdir angegeben wird. Dieses Verzeichnis darf noch nicht vorhanden sein; nach Erstellung des Exportpakets wird es gelöscht.

Anmerkungen zur Importphase

Ein Aktualisierungspaket wird auf die entsprechenden Replikate angewendet, die dem Synchronisationsserver zugeordnet sind, der das Paket empfangen hat. Die Angabe bestimmter Replikate oder Speicherpositionen ist nicht erforderlich.

Der Importprozess wendet Aktualisierungspakete in der richtigen Reihenfolge an. Deshalb können die Pakete in der Befehlszeile in beliebiger Reihenfolge angegeben werden.

Während der Importphase wird das Datenbankreplikat nicht für normale Datenbankoperationen, aber für alle anderen MultiSite-Operationen gesperrt.

Pakete überspringen

Aktualisierungspakete werden von syncreplica –import in den folgenden Situationen nicht verarbeitet:

  • Das Aktualisierungspaket enthält Änderungen, die von anderen Änderungen abhängen, die noch nicht in dieses Replikat importiert wurden. Das bedeutet im Normalfall, dass ein für dieses Replikat vorgesehenes Aktualisierungspaket nicht gesendet wurde oder während des Transports verloren ging.
  • Bei der Verarbeitung eines früheren physischen Pakets, das Bestandteil eines mehrteiligen logischen Pakets war, sind Fehler aufgetreten.

In diesen Fällen zeigt syncreplica –import eine erklärende Nachricht an.

Aktualisierungsfehler und erneute Wiedergabe von Paketen

In einigen Fällen beginnt syncreplica –import mit der Anwendung von Operationen auf ein Replikat, scheitert aber mit einer Fehlernachricht. Ein anderer Prozess könnte die Datenbank zum Beispiel gesperrt haben, so dass der Import fehlschlug. Nach dem Entsperren der Datenbank können Sie syncreplica –import ausführen, um das gesamte Aktualisierungspaket erneut zu verarbeiten.

Aktualisierungspakete, die bereits erfolgreich verarbeitet wurden, können problemlos importiert werden; Änderungen werden nur einmal vorgenommen.

Aktualisierungspakete löschen

Wenn ein einzelner Aufruf von syncreplica –import ein Paket erfolgreich auf alle dem Synchronisationsserver zugeordneten Zielreplikate anwendet, wird das Aktualisierungspaket nach Abschluss des Befehls gelöscht. Bei Verarbeitung des Pakets mit mehreren syncreplica –import-Befehlen wird es nicht gelöscht.

Hooks starten

Hooks in Rational ClearQuest werden aufgrund von Änderungen während des Paketimports nicht gestartet.

Namensunverträglichkeiten auflösen

syncreplica löst Namensunverträglichkeiten von Objekten auf, die in unterschiedlichen Replikaten erstellt wurden.

Verzögerte Aktualisierungen

syncreplica informiert die Benutzer von Rational ClearQuest nicht über Aktualisierungen von Replikaten. Allen aktiven Benutzern werden Aktualisierungen innerhalb weniger Sekunden unter Verwendung der normalen Routinen für Datenbankabfragen in Rational ClearQuest angezeigt.

Fehlerbehebung bei Paketübermittlungsfehlern

Wenn ein Paket nicht übermittelt werden kann, wird es über die Zwischenspeicher- und Übertragungsfunktion an den Synchronisationsserver für das ursprüngliche Replikat gesendet. Der Administrator der Zwischenspeicher- und Übertragungsfunktion erhält eine E-Mail-Nachricht. Diese Aktionen werden ausgeführt, wenn wiederholte Versuche der Paketübermittlung fehlgeschlagen sind und die zugeordnete Zeit abgelaufen ist; es kann auch sein, dass der Zielhost unbekannt oder eine Datendatei nicht vorhanden ist. Die Konfigurationseinstellungen der Zwischenspeicher- und Übertragungsfunktion geben den Verfallszeitraum, die E-Mail-Adresse des Administrators und das Benachrichtigungsprogramm an.

Einschränkungen

Sie müssen über Superuserberechtigungen verfügen.

Optionen und Argumente: Exportphase

Clan, Site und Familie angeben

Standardeinstellung
Clan: Der erste Clan, der auf dieser Site repliziert wird. Wenn für diesen Host mehrere dbset-Verbindungen registriert sind, ist –clan erforderlich.

Site: Aktuelle Site. Wenn auf diesem Host mehrere Sites vorhanden sind, ist –site erforderlich.

Familie: Keine Standardeinstellung; Sie müssen eine Familie angeben.

–cl/an clanname
Der Name für den Clan des Replikats.
–site sitename
Der Name für die Site des Replikats.
–fam/ily familienname
Benutzerdatenbankfamilie: Der Datenbankname, der bei der Erstellung der Benutzerdatenbank zugeordnet wurde.

Schema-Repository-Familie: Der Familienname ist MASTR.

Benutzernamen und Kennwort angeben

Standardeinstellung
Sie müssen einen Benutzernamen und ein Kennwort angeben.
–u/ser benutzer
Der Name eines Benutzers mit Superuserberechtigungen.
–p/assword kennwort
Das dem angegebenen Benutzer zugeordnete Kennwort.

Größe des Aktualisierungspakets angeben

Standardeinstellung
Wird –maxsize nicht angegeben, wird je nach verwendeter Versandart die Standardpaketgröße wie folgt festgelegt:
  • Mit –ship oder –fship erstellte Pakete sind nicht größer als die in der Datei shipping.conf (UNIX) oder in der MultiSite-Steuerkonsole (Windows) angegebene maximale Paketgröße.
  • Mit –out erstellte Pakete sind nicht größer als 2 GB.
–max/size maximale-paketgröße [ –lim/it anzahl-pakete ]
Die maximale Größe eines physischen Pakets, ausgedrückt als Zahl gefolgt von einem Buchstaben. Beispiel:
500k
500 Kilobyte
20m
20 Megabyte
1.5g
1,5 Gigabyte

Mit der Option –limit wird die Anzahl der von syncreplica generierten Pakete eingeschränkt; jedes Paket ist nicht größer als maximale-paketgröße. Verwenden Sie diese Option, wenn der Plattenspeicherplatz für die Speicherposition oder den Zwischenspeicherungsbereich begrenzt ist.

Disposition des Aktualisierungspakets

Standardeinstellung
Keine. Sie müssen angeben, wie die mit syncreplica –export erstellten Aktualisierungspakete gespeichert und an andere Sites übertragen werden sollen. Wenn Sie –ship oder –fship verwenden und die Option –sclass weglassen, speichert syncreplica das Paket in der Speicherposition, die für die Klasse cq_default in der Datei shipping.conf (UNIX und Linux) oder in der MultiSite-Steuerkonsole (Windows) angegeben wurde.
–shi/p –fsh/ip
Speichert das Aktualisierungspaket in mindestens einer Datei in einer Speicherposition der Zwischenspeicher- und Übertragungsfunktion; syncreplica erstellt für jedes physische Paket einen eigenen Versandauftrag, der angibt, wie und wann die Übermittlung erfolgen soll. Die Empfänger sind die Synchronisationsserver, die in der Replikatdatenbank den Argumenten von replikatname zugeordnet sind. Synchronisationsserverzuordnungen werden mit mkreplica –export erstellt und können mit chreplica geändert werden.

Mit –fship (force ship) wird der Versandserver aufgerufen, um das Aktualisierungspaket sofort zu senden. Mit –ship wird der Server nicht aufgerufen.

–wor/kdir verzeichnis
Ein temporäres Arbeitsverzeichnis für syncreplica. Dieses Verzeichnis darf noch nicht vorhanden sein; nach Abschluss des syncreplica-Exportprozesses wird es gelöscht.
–sc/lass klassenname
Gibt die Speicherklasse des Pakets und den Versandauftrag an. syncreplica sucht die Speicherklasse in der Datei shipping.conf (auf UNIX- und Linux-Systemen) oder in der MultiSite-Steuerkonsole unter Windows, um die zu verwendende Speicherposition zu ermitteln.
–out pname-der-paketdatei
Der Name des ersten Aktualisierungspakets. Zusätzliche physische Pakete werden gegebenenfalls in Dateien mit der Bezeichnung pname-der-paketdatei_2, pname-der-paketdatei_3 usw. gespeichert.

Die Aktualisierungspakete werden nicht automatisch übermittelt; verwenden Sie hierzu eine geeignete Methode. Sie können ein Paket mit –out erstellen und dieses mit Hilfe der Zwischenspeicher- und Übertragungsfunktion übermitteln.

pname-des-zwischenspeicherungsbereichs
Das Verzeichnis, in dem die Paketdateien gespeichert werden.

Vorgehensweise bei Paketübermittlungsfehlern

Standardeinstellung
Wenn ein Paket nicht übermittelt werden kann, wird es über die Zwischenspeicher- und Übertragungsfunktion an den Synchronisationsserver für das ursprüngliche Replikat gesendet. Der Administrator der Zwischenspeicher- und Übertragungsfunktion erhält eine E-Mail-Nachricht. Diese Aktionen werden ausgeführt, wenn wiederholte Versuche der Paketübermittlung fehlgeschlagen sind und die zugeordnete Zeit abgelaufen ist; es kann auch sein, dass der Zielhost unbekannt oder eine Datendatei nicht vorhanden ist. Die Konfigurationseinstellungen der Zwischenspeicher- und Übertragungsfunktion geben den Verfallszeitraum, die E-Mail-Adresse des Administrators und das Benachrichtigungsprogramm an.
–pex/pire datum-zeit
Gibt an, zu welchem Zeitpunkt die Zwischenspeicher- und Übertragungsfunktion die Paketübermittlungsversuche einstellt und eine E-Mail-Nachricht bezüglich des Fehlers generiert. Diese Option setzt den Verfallszeitraum für die Speicherklasse in der Datei shipping.conf (UNIX oder Linux) oder in der MultiSite-Steuerkonsole (Windows) außer Kraft.

Das Argument datum-zeit kann eines der folgenden Formate aufweisen:

datum.zeit | datum | zeit
Dabei gilt Folgendes:
datum:
= wochentag | langes-datum
zeit:
= h[h]:m[m][:s[s]] [UTC [ [ + | - ]h[h][:m[m] ] ] ]
wochentag:
= today |yesterday |Sunday | ... |Saturday |Sun | ... |Sat
langes-datum:
= t[t]monat[[jj]jj]
monat:
= January |... |December |Jan |... |Dec

Geben Sie die Zeit im 24-Stunden-Format bezogen auf die Ortszeitzone an. Erfolgt keine Angabe, wird der Standardwert 00:00:00 verwendet. Wenn Sie das Datum weglassen, lautet der Standardwert today. Wenn Sie das Jahrhundert, das Jahr oder ein bestimmtes Datum weglassen, wird der aktuellste Wert verwendet. Geben Sie UTC (Coordinated Universal Time) an, wenn die Zeit unabhängig von der Zeitzone auf einen einheitlichen Zeitpunkt gesetzt werden soll. Mit dem Operator plus (+) oder minus (-) können Sie eine positive oder negative Abweichung von der UTC-Zeit angeben. Wenn Sie UTC ohne Stunden- oder Minutenabweichungen angeben, wird als Zeit standardmäßig Westeuropäische Zeit (WEZ) verwendet. Datumsangaben vor dem 1. Januar 1970 (UTC-Zeit) sind ungültig.

Beispiele
  • 22-November-2002
  • sunday
  • yesterday.16:00
  • 0
  • 8-jun
  • 13:00
  • today
  • 9-Aug.10:00UTC
–not/ify e-mail-adresse
Die Übermittlungsfehlernachricht wird an die angegebene E-Mail-Adresse gesendet.

Wenn der Fehler auf einem Windows-Host auftritt, auf dem die E-Mail-Benachrichtigung nicht aktiviert ist, wird in der Windows-Ereignisanzeige eine Nachricht angezeigt. Die Nachricht enthält den Wert von e-mail-adresse, der mit dieser Option angegeben wurde, sowie einen Hinweis darauf, dass der Benutzer über den Status der Operation informiert werden sollte.

Zielreplikate angeben

Standardeinstellung
Keine.
replikat...
Sitename des Zielreplikats. Sie können ein oder mehrere Zielreplikate angeben. boston_hub gibt beispielsweise an, dass boston_hub das Aktualisierungspaket empfängt, während boston_hub bangalore angibt, dass boston_hub und bangalore das Aktualisierungspaket empfangen.

Optionen und Argumente: Importphase

Clan, Site und Familie angeben

Standardeinstellung
Clan: Der erste Clan, der auf dieser Site repliziert wird. Wenn für diesen Host mehrere dbset-Verbindungen registriert sind, ist –clan erforderlich.

Site: Aktuelle Site. Wenn auf diesem Host mehrere Sites vorhanden sind, ist –site erforderlich.

Familie: Keine Standardeinstellung; Sie müssen eine Familie angeben.

–cl/an clanname
Der Name für den Clan des Replikats.
–site sitename
Der Name für die Site des Replikats.
–fam/ily familienname
Benutzerdatenbankfamilie: Der Datenbankname, der bei der Erstellung der Benutzerdatenbank zugeordnet wurde.

Schema-Repository-Familie: Der Familienname ist MASTR.

Benutzernamen und Kennwort angeben

Standardeinstellung
Sie müssen einen Benutzernamen und ein Kennwort angeben.
–u/ser benutzer
Der Name eines Benutzers mit Superuserberechtigungen.
–p/assword kennwort
Das dem angegebenen Benutzer zugeordnete Kennwort.

Position der Aktualisierungspakete angeben

Standardeinstellung
Keine.
–rec/eive [ –sc/lass speicherklasse ]
Diese Option ist nützlich, wenn Sie syncreplica auf dem Synchronisationsserver ausführen.

Durchsucht die Speicherpositionen des aktuellen Hosts. Nicht verarbeitete Aktualisierungspakete für Replikate, die diesem Host zugeordnet sind, werden auf die entsprechenden Replikate auf dem Host angewendet. Mit –sclass durchsucht syncreplica nur die Speicherpositionen der angegebenen Speicherklasse.

Wenn syncreplica Replikaterstellungspakete findet, wird eine E-Mail an den Administrator der Zwischenspeicher- und Übertragungsfunktion gesendet. Wenn der aktuelle Host ein Windows-Host und die E-Mail-Benachrichtigung nicht aktiviert ist, wird in der Windows-Ereignisanzeige eine Nachricht angezeigt. Verwenden Sie mkreplica, um diese Replikaterstellungspakete zu importieren.

pname-der-paketdatei | pname-des-zwischenspeicherungsbereichs...
Verarbeitet jedes Vorkommen von pname-der-paketdatei als Aktualisierungspaket. Für jede Angabe von pname-des-zwischenspeicherungsbereichs werden alle zuvor nicht verarbeiteten Aktualisierungspakete in dem Verzeichnis lokalisiert und auf die entsprechenden Replikate angewendet.

Beispiele

In den folgenden Beispielen wurden die Zeilen zur besseren Lesbarkeit aufgeteilt. Jeder Befehl muss in einer einzelnen Zeile eingegeben werden.

Exporte

  • Generieren Sie im Replikat boston_hub ein Aktualisierungspaket für das Paket sanfran_hub. Speichern Sie das Paket in c:\cqms\sanfran_hub_sync.xml.

    multiutil syncreplica -export -clan telecomm -site boston_hub
    -family SAMPL -user susan -p kennwort -out c:\cqms\sanfran_hub_sync.xml
    sanfran_hub

    Multiutil: Packet file `c:\cqms\sanfran_hub_sync.xml' generated

  • Speichern Sie die Paketdatei in einer Speicherposition, um sie zu einem späteren Zeitpunkt zu versenden.

    multiutil syncreplica -export -clan telecomm -site boston_hub
    -family DEV -user susan -p kennwort -maxsize 500mb -workdir c:\work
    -ship -sclass cq_default sanfran_hub

    Multiutil: Packet file
    `C:\work\sync_BOSTON_HUB_26-March-02_10-55-16.xml' generated
    multiutil: Shipping order
    "C:\temp\cqms\ms_ship\outgoing\sh_o_sync_BOSTON_HUB_26-March-02_
    10-55-16.xml" generated.

  • Wie das vorherige Beispiel, aber das Paket wird sofort versendet.

    multiutil syncreplica -export -clan telecomm -site boston_hub
    -family DEV -user susan -password p -maxsize 500mb -workdir
    c:\work -fship -sclass cq_default sanfran_hub

    Multiutil: Packet file
    `C:\work\sync_BOSTON_HUB_26-March-02_10-56-43.xml' generated
    multiutil: Shipping order "C:\cqms\ms_ship\outgoing\sh_o_sync_
    BOSTON_HUB_26-March-02_10-56-43.xml" generated.
    multiutil: Attempting to forward/deliver generated packets...
    multiutil:   -- Forwarded/delivered packet
    C:\cqms\ms_ship\outgoing\sync_BOSTON_HUB_26-March-02_10-
    ---- NOTE: consult the NT event log for errors.

Importe

  • Importieren Sie alle eingehenden Aktualisierungspakete in der Speicherklasse cq_storage.

    multiutil syncreplica -import -clan telecomm -site sanfran_hub
    -family DEV
    -user jcole -p kennwort -receive -sclass cq_storage

    Multiutil: 4 transactions from boston_hub have been replayed
    into the MASTR database
    Multiutil: 2 transactions from boston_hub have been replayed
    into the DEV database
    Multiutil: Deleting packet C:\temp\cqms\ms_ship\incoming\sync_
    boston_hub_22-January-02_11-10-34.xml

  • Verarbeiten Sie das Aktualisierungspaket sanfran_hub_sync.xml im Replikat sanfran_hub.

    multiutil syncreplica -import -clan telecomm -site sanfran_hub
    -family DEV -user jcole -p kennwort c:\cqms\sanfran_hub_sync.xm

    Multiutil: 1 transactions from boston_hub have been replayed
    into the MASTR database
    Multiutil: 2 transactions from boston_hub have been replayed
    into the DEV database
    Multiutil: Deleting packet c:\cqms\sanfran_hub_sync.xml

  • Versuchen Sie, das Aktualisierungspaket sanfran_hub_sync.xml im Replikat sanfran_hub zu verarbeiten, bevor ein Upgrade des Replikats sanfran_hub auf die neueste Schemaversion erfolgt.

    multiutil syncreplica -import -clan telecomm -site sanfran_hub
    -family DEV -user jcole -p kennwort c:\cqms\sanfran_hub_sync.xml

    Multiutil: The UPDATE_PACKET packet sent from boston_hub at
    2002-01-22 15:15:50  is destined for schema revision 2, not 1;
    re-execute syncreplica after site admin has upgraded database.
    Multiutil: 2 transactions from boston_hub have been replayed
    into the MASTR database
    Multiutil: Preserving packet c:\cqms\sanfran_hub_sync.xml.

  • Verarbeiten Sie alle Aktualisierungspakete in der eingehenden Speicherposition.

    multiutil syncreplica -import -clan telecomm -site boston_hub
    -family DEV -user susan -p kennwort -receive

    Multiutil: 1 transactions from SANFRAN_HUB have been replayed
    into the MASTR database
    Multiutil: 2 transactions from SANFRAN_HUB have been replayed
    into the DEV database
    Multiutil: Deleting packet C:\temp\cqms\ms_ship\incoming\sync_
    SANFRAN_HUB_07-February-02_11-24-49.xml


Feedback