DB2 Replikation Benutzer- und Referenzhandbuch

Kapitel 13. Capture und Apply für Windows und OS/2

Dieses Kapitel enthält Informationen zu Installation und Betrieb der Programme Capture und Apply auf den folgenden Betriebssystemen:

In diesem Kapitel wird ferner die bedarfsgesteuerte Replikation bei 32-Bit-Windows-Betriebssystemen beschrieben. Weitere Informationen zur bedarfsgesteuerten Replikation enthält der Abschnitt Bedarfsgesteuerte Replikation (nur 32-Bit-Windows-Betriebssysteme).

Lesen Sie zunächst die folgenden Abschnitte und erst danach die Abschnitte zum Betrieb der Programme Capture und Apply:


Anforderungen an die Benutzer-ID zur Ausführung der Programme Capture und Apply

Die Benutzer-ID, unter der Sie die Programme Capture und Apply ausführen wollen, muss über die erforderlichen Berechtigungen verfügen:


Einrichten der Programme Capture und Apply

Das Einrichten der Programme umfasst das Konfigurieren der Quellen-, Ziel- und Steuerungs-Server sowie das Einrichten der NT-Dienste unter Windows. Die folgenden Abschnitte enthalten Anweisungen zum Konfigurieren aller Server, zum Bereitstellen der Authentifizierung der Endbenutzer beim Quellen-Server und zum Einrichten der NT-Systemsteuerung (Dienste).

Konfigurieren des Capture-Programms für Windows und OS/2

  1. Melden Sie sich unter einer Benutzer-ID an, die über die erforderlichen Berechtigungen verfügt.
  2. Stellen Sie eine Verbindung zu der Quellen-Server-Datenbank her, indem Sie Folgendes eingeben:
    DB2 CONNECT TO datenbank
    

    Dabei gibt datenbank die Quellen-Server-Datenbank an.

  3. Bereiten Sie die Quellen-Server-Datenbank für die aktualisierende Wiederherstellung vor, indem Sie die Befehle UPDATE DATABASE CONFIGURATION und BACKUP DATABASE absetzen. Beispiel:
    DB2 UPDATE DATABASE CONFIGURATION FOR datenbank-aliasname USING LOGRETAIN ON
    DB2 BACKUP DATABASE datenbank-aliasname
    

    oder:

    DB2 UPDATE DATABASE CONFIGURATION FOR datenbank-aliasname USING USEREXIT ON
    DB2 BACKUP DATABASE datenbank-aliasname
    

    Sie müssen möglicherweise den Wert für DBHEAP, APPLHEAPSZ, PCKCACHESZ, LOCKLIST und LOGBUFSZ entsprechend den Anforderungen Ihrer Installation erhöhen.

  4. Wahlfrei besteht folgende Möglichkeit: Das Capture-Programm wird automatisch während der Ausführung gebunden; wenn Sie aber Optionen angeben oder überprüfen möchten, ob alle Bindeprozesse erfolgreich ausgeführt werden, führen Sie folgende Schritte aus:

    1. Wechseln Sie in das Verzeichnis, in dem sich die Bindedateien des Capture-Programms befinden. Normalerweise handelt es sich dabei um das Verzeichnis laufwerk:\SQLLIB\BND.
    2. Erstellen Sie das Capture-Paket, und binden Sie es durch Eingabe des folgenden Befehls an die Quellen-Server-Datenbank:
      DB2 BIND @CAPTURE.LST ISOLATION UR BLOCKING ALL
      

      Dabei gibt UR die Liste im UR-Format (UR = Uncommitted Read) an, um eine bessere Leistung zu erzielen.

    Diese Befehle erstellen eine Liste von Paketen, deren Namen in der Datei CAPTURE.LST enthalten sind.

Wahlfrei: Manuelles Konfigurieren des Apply-Programms für Windows und OS/2

Wichtig: Das Apply-Paket wird während der Ausführung automatisch gebunden. Die im Folgenden beschriebenen Schritte zum Binden des Apply-Pakets unter Windows und OS/2 sind deshalb wahlfrei. Wenn Sie Optionen angeben oder überprüfen möchten, ob alle Bindeprozesse erfolgreich ausgeführt werden, führen Sie folgende Schritte aus:

  1. Melden Sie sich unter einer Benutzer-ID an, die über die erforderlichen Berechtigungen verfügt.
  2. Wechseln Sie in das Verzeichnis, in dem sich die Bindedateien des Apply-Programms befinden. Normalerweise handelt es sich dabei um das Verzeichnis laufwerk:\SQLLIB\BND.
  3. Führen Sie die folgenden Schritte für jeden Quellen-, Ziel- und Steuerungs-Server durch, zu dem das Apply-Programm eine Verbindung herstellt:

    1. Stellen Sie eine Verbindung zu der Server-Datenbank her, indem Sie Folgendes eingeben:
      DB2 CONNECT TO datenbank
      

      Dabei ist datenbank der Quellen-, Ziel- oder Steuerungs-Server. Wenn die Server-Datenbank als ferne Datenbank katalogisiert ist, müssen Sie möglicherweise eine Benutzer-ID und ein Kennwort im Befehl DB2 CONNECT TO eingeben. Beispiel:

      DB2 CONNECT TO datenbank USER benutzerid USING kennwort
      
    2. Erstellen Sie das Apply-Programmpaket, und binden Sie es an die Server-Datenbank durch Eingabe der beiden folgenden Befehle:
      DB2 BIND @APPLYCS.LST ISOLATION CS BLOCKING ALL GRANT PUBLIC
      
      DB2 BIND @APPLYUR.LST ISOLATION UR BLOCKING ALL GRANT PUBLIC
      

      Dabei gibt CS die Liste im CS-Format (CS = Cursor Stability) und UR die Liste im UR-Format an (UR = Uncommitted Read).

      Da das Apply-Programm statische SQL-Aufrufe für die Steuertabellen verwendet, sucht der Apply-Bindeprozess nach allen Steuertabellen auf jedem Server, an den das Programm gebunden ist, unabhängig davon, ob diese Steuertabellen auf den einzelnen Servern verwendet werden.

    Diese Befehle erstellen eine Liste von Paketen, deren Namen in den Dateien APPLYCS.LST und APPLYUR.LST enthalten sind.

Authentifizierung der Endbenutzer beim Quellen-Server

Damit die Authentifizierung der Endbenutzer beim Quellen-Server erfolgen kann, müssen Sie eine Kennwortdatei mit dem Schema AUTH=SERVER bereitstellen. Das Apply-Programm verwendet diese Datei, wenn eine Verbindung zum Quellen-Server hergestellt wird. Erteilen Sie nur der Benutzer-ID Lesezugriff, die das Apply-Programm ausführen soll.

Erstellen einer Kennwortdatei:

Die Kennwortdatei muss folgende Anforderungen erfüllen:

Weitere Informationen zu Identifikationsüberprüfung und Sicherheit enthält die Veröffentlichung IBM DB2 Universal Database Systemverwaltung.

Einrichten des Replikationsdiensts über die NT-Systemsteuerung

Sie können die Programme Capture und Apply für Windows über den DB2-Befehlsprozessor oder über die NT-Systemsteuerung (Dienste) ausführen. Bei Verwendung der NT-Systemsteuerung können Sie die Programme Capture und Apply automatisch als Dienste starten lassen.

Wenn Sie die Programme Capture und Apply als Dienste ausführen möchten, müssen Sie den Replikationsdienst manuell installieren (die Installation erfolgt nicht automatisch). Die folgenden Schritte zeigen, wie der Replikationsdienst installiert und als NT-Dienst eingerichtet wird.

In diesem Abschnitt bezieht sich x:\ jeweils auf das Laufwerk und Verzeichnis, das die ausführbaren Programme enthält. Diese Programme befinden sich normalerweise im Verzeichnis \sqllib\bin.

Um den Replikationsdienst zu installieren und als NT-Dienst einzurichten, gehen Sie folgendermaßen vor:

  1. Öffnen Sie ein Befehlsfenster, und wechseln Sie in das Verzeichnis, das die ausführbare Datei ASNINST.EXE enthält.
  2. Installieren Sie den Replikationsdienst, indem Sie folgenden Befehl eingeben:
    ASNINST x:\ASNSERV.EXE
    
  3. Richten Sie den Dienst über die NT-Systemsteuerung ein:

    1. Klicken Sie doppelt auf dem Symbol Dienste. Daraufhin wird das Fenster "NT-Dienste" angezeigt.
    2. Wählen Sie Replikation aus, und klicken Sie Starten an.
    3. Stellen Sie sicher, dass die Startart auf automatischen Start eingestellt ist.
    4. Geben Sie die lokale Benutzer-ID und das Kennwort ein, und klicken Sie anschließend OK an. Es muss sich dabei um die Benutzer-ID handeln, unter der die Programme Capture und Apply ausgeführt werden und die dazu über die entsprechenden DB2-Berechtigungen verfügt.
  4. Fügen Sie die Umgebungsvariable ASNPATH hinzu, um die Speicherposition der Capture- und Apply-Programmdateien anzugeben:

    1. Klicken Sie doppelt auf System in der NT-Systemsteuerung. Daraufhin wird das Fenster "Systemeigenschaften" angezeigt.
    2. Klicken Sie die Indexzunge Umgebung an.
    3. Geben Sie die Zeichenfolge ASNPATH im Feld Systemvariablen entsprechend dem folgenden Beispiel ein:
      ASNPATH=x:
      
      Wichtig: Fügen Sie keinen Schrägstrich zur Variable ASNPATH hinzu.
    4. Klicken Sie OK an.
    5. Starten Sie den Computer erneut.
  5. Erstellen Sie eine ASCII-Datei mit dem Namen NTSERV.ASN zum Ausführen der Programme Capture und Apply:

    1. Öffnen Sie eine neue Datei, und geben Sie die folgenden Sätze ein:
      db_name x:\ASNCCP parameter
      
      datenbankname x:\ASNAPPLY parameter
      

      Dabei ist datenbankname der Name Ihrer Quellendatenbank für das Capture-Programm und der Name der Steuerungsdatenbank für das Apply-Programm, x:\ gibt die Speicherposition der Programme an, und parameter steht für einen oder mehrere Aufrufparameter (z. B. das Apply-Qualifikationsmerkmal).

      Um die Trace-Einrichtungen der Programme Capture und Apply zu verwenden, geben Sie die entsprechenden Aufrufparameter in der Datei an. Beispiel:

      DBNAME1 C:\SQLLIB\BIN\ASNCCP COLD TRACE<CRLF>
      DBNAME2 C:\SQLLIB\BIN\ASNAPPLY APPLYQUAL DBNAME2 TRCFLOW TRCFILE<CRLF>
      

      Neben dem regulären Trace-Aufrufparameter (z. B. TRCFLOW) ist der Aufrufparameter TRCFILE erforderlich, um einen Trace für das Apply-Programm zu generieren.

      Geben Sie keinen Namen für die Trace-Ausgabedatei an. Die Ausgabedateien werden unter einem Standardnamen an eine vorgegebene Speicherposition geschrieben. Dies geschieht wie folgt:

      • Für das Capture-Programm:
        x:\exemplarnamedbname.trc
        
      • Für das Apply-Programm:
        x:\APPLYzeitmarke.trc
        
    2. Sichern Sie die Datei unter folgendem Namen:
      x:\ntserv.asn
      

Die Replikationsdienste speichern alle Nachrichten in der Datei x:\asnserv.log. Wenn Fehler auftreten, finden Sie hier Informationen in den entsprechenden Nachrichten.

Um die Programme Capture und Apply zu stoppen, gehen Sie folgendermaßen vor:

Wichtig: Nach dem Starten des Diensts werden die Programme Capture und Apply unabhängig von ASNSERV ausgeführt. Das bedeutet, dass die Programme Capture und Apply auch dann weiter ausgeführt werden, wenn ASNSERV gestoppt wird. Durch Eingabe des Befehls ASNCMD STOP in einem Befehlsfenster können Sie das Capture-Programm stoppen. Durch Eingabe des Befehls ASNASTOP STOP in einem Befehlsfenster können Sie das Apply-Programm stoppen.

Um den Replikationsdienst aus dem Fenster "NT-Dienste" zu entfernen, gehen Sie folgendermaßen vor:

Führen Sie das Programm ASNREMV aus, um den Replikationsdienst aus der NT-Systemsteuerung zu entfernen.


Betrieb von Capture für Windows und Capture für OS/2

Mit den im Folgenden beschriebenen Befehlen kann der Administrator die Programme Capture für Windows und Capture für OS/2 ausführen. Die entsprechenden Befehle oder Tastenkombinationen sind von einem NT- oder OS/2-Fenster aus zu verwenden.

In den folgenden Abschnitten werden die einzelnen Funktionen des Capture-Programms beschrieben:

Im Folgenden sind darüber hinaus verschiedene Einschränkungen aufgeführt, die beim Ausführen des Capture-Programms gelten.

Einschränkungen beim Ausführen des Capture-Programms

Bestimmte Aktionen bewirken einen Abbruch des aktiven Capture-Programms. Stoppen Sie das Capture-Programm, wenn Sie eine der folgenden Funktionen ausführen möchten:

Das Capture-Programm kann keine Änderungen erfassen, die von DB2-Dienstprogrammen vorgenommen wurden, da die Dienstprogramme die von ihnen vorgenommenen Änderungen nicht protokollieren.

Einrichten von Umgebungsvariablen für Capture für Windows und OS/2

Bevor Sie das Capture-Programm starten, müssen Sie zwei Umgebungsvariablen setzen. Diese Variablen müssen auch gesetzt werden, wenn Sie eine der folgenden Funktionen verwenden:

Um die Umgebungsvariablen zu setzen, gehen Sie folgendermaßen vor:

  1. Setzen Sie die Umgebungsvariable für den DB2-Exemplarnamen (DB2INSTANCE) wie folgt:
    SET DB2INSTANCE=db2-exemplarname
    
  2. Wahlfrei: Setzen Sie die Umgebungsvariable DB2DBDFT auf den Quellen-Server.

Starten von Capture für Windows und OS/2

Nach dem Starten des Capture-Programms wird dieses kontinuierlich ausgeführt, bis es gestoppt wird oder einen nicht behebbaren Fehler entdeckt.

Um das Capture-Programm über die NT-Dienste zu starten, gehen Sie folgendermaßen vor:

  1. Wählen Sie Replikation im Fenster "NT-Dienste" aus.
  2. Klicken Sie den Druckknopf Starten an. Das Capture-Programm wird gemäß Ihren Vorgaben in der ASCII-Datei gestartet.

Sie können den Replikationsdienst auch starten, indem Sie STRTSERV in der NT-Befehlszeile eingeben.

Um das Capture-Programm über das DB2-Befehlsfenster zu starten, gehen Sie folgendermaßen vor:

  1. Wenn Sie ein oder mehrere Exemplare von DB2 für Windows NT oder DB2 für OS/2 erstellt haben, verwenden Sie den Befehl SET, um die Umgebungsvariable DB2INSTANCE auf das Exemplar von DB2 für Windows NT bzw. DB2 für OS/2 zu setzen, über das Sie das Capture-Programm ausführen möchten:
    SET DB2INSTANCE=datenbankexemplarname
    

    Bei der Ausführung des Capture-Programms wird eine Datei mit dem Namen datenbankexemplarname datenbankname.CCP (Windows) oder datenbankname.CCP (OS/2) in dem Verzeichnis erstellt, aus dem das Capture-Programm gestartet wird. Dies ist eine Protokolldatei für die vom Capture-Programm ausgegebenen Nachrichten. Diese Nachrichten werden auch in der Trace-Tabelle aufgezeichnet.

  2. Wahlfrei: Setzen Sie die Umgebungsvariable DB2DBDFT auf den Quellen-Server.
  3. Zum Starten des Capture-Programms geben Sie den Befehl ASNCCP in dem Windows- bzw. OS/2-Fenster ein, in dem Sie auch den Befehl SET ausgeführt haben. Die Syntax lautet wie folgt:
>>-ASNCCP----+----------------+---+--------+---+---------+------>
             '-quellen-server-'   +-WARM---+   +-PRUNE---+
                                  +-WARMNS-+   '-NOPRUNE-'
                                  '-COLD---'
 
>-----+---------+---+---------+---+----------+---+----------+--->
      +-NOTRACE-+   '-TRCFILE-'   '-NOTRCTBL-'   '-AUTOSTOP-'
      '-TRACE---'
 
>-----+----------+---+-----------+---+---------+---------------><
      '-LOGREUSE-'   '-LOGSTDOUT-'   +-ALLCHG--+
                                     '-CHGONLY-'
 

In Tabelle 30 werden die Aufrufparameter definiert.

Tabelle 30. ASNCCP-Aufrufparameterdefinitionen für Windows- und OS/2-Plattformen
Parameter Definition
quellen-server Name des Quellen-Servers, der - wenn er eingegeben wird - an erster Stelle stehen muss. Erfolgt keine Angabe, wird der Wert aus der Umgebungsvariablen DB2DBDFT verwendet.
WARM  (Standardwert)  Das Capture-Programm nimmt die Verarbeitung an der Stelle wieder auf, an der sie bei der letzten Ausführung beendet wurde, wenn Warmstartinformationen zur Verfügung stehen. Wenn das Capture-Programm keinen Warmstart ausführen kann, erfolgt ein Kaltstart.
WARMNS Das Capture-Programm nimmt die Verarbeitung an der Stelle wieder auf, an der sie bei der letzten Ausführung beendet wurde, wenn Warmstartinformationen zur Verfügung stehen. Andernfalls wird eine Nachricht ausgegeben und das Programm beendet. Bei WARMNS schaltet das Capture-Programm nicht automatisch auf einen Kaltstart um. Das Capture-Programm lässt die Trace-, UOW-, CD- und Warmstarttabellen intakt. Wenn Fehler auftreten, wird das Capture-Programm beendet, anstatt auf einen Kaltstart umzuschalten (was bei Angabe von WARM der Fall wäre).
COLD Das Capture-Programm löscht bei der Initialisierung zunächst alle Zeilen in der CD-Tabelle, der UOW-Tabelle und Trace-Tabelle. Alle Subskriptionen für diese Replikationsquellen werden während des nächsten Verarbeitungszyklus des Apply-Programms vollständig aktualisiert. Eine vollständige Aktualisierung wird nicht vorgenommen, wenn die Zieltabelle eine unvollständige CCD-Tabelle ist (vgl. Abschnitt Korrektur von Abstimmungsverlusten zwischen Quellen- und Zieltabellen).
PRUNE  (Standardwert)  Das Capture-Programm bereinigt automatisch die Zeilen in den CD- und UOW-Tabellen, die das Apply-Programm kopiert hat. Dies geschieht in dem Intervall, das in der Tabelle mit Anpassungsparametern angegeben ist. Außerdem löscht das Capture-Programm auch die CD- und UOW-Zeilen, die älter als die Aufbewahrungszeit sind, auch wenn sie nicht während des Warmstarts kopiert wurden.
NOPRUNE Das automatische Bereinigen ist inaktiviert. Das Capture-Programm bereinigt die CD- und UOW-Tabellen nur, wenn der Befehl PRUNE eingegeben wird.
NOTRACE  (Standardwert)  Es werden keine Trace-Informationen geschrieben.
TRACE Trace-Nachrichten werden in die Standardausgabe (stdout) geschrieben, es sei denn, es wurde auch TRCFILE angegeben.
TRCFILE Werden TRCFILE und TRACE zusammen angegeben, schreibt das Capture-Programm die Trace-Ausgabe in die Trace-Datei (*.trc). Geben Sie die Option nicht an, sendet das Capture-Programm die Trace-Ausgabe an die Standardausgabe (stdout).
NOTRCTBL Die Nachrichten des Capture-Programms werden nicht in der Trace-Tabelle aufgezeichnet.
AUTOSTOP Das Capture-Programm wird beendet, nachdem es alle Transaktionen erfasst hat, die vor dem Start des Capture-Programms protokolliert wurden.
LOGREUSE Das Capture-Programm verwendet die Protokolldatei (*.ccp) immer wieder. Dazu wird die Datei beim Start des Capture-Programms jeweils gelöscht und neu erstellt. Geben Sie diese Option nicht an, hängt das Capture-Programm die Nachrichten an die Protokolldatei an. Dies gilt auch nach einem Neustart des Capture-Programms.
LOGSTDOUT Das Capture-Programm sendet alle Nachrichten an die Standardausgabe (stdout) und an die Protokolldatei.
ALLCHG  (Standardwert)  Gibt an, dass jedes Mal ein Eintrag in die CD-Tabelle geschrieben wird, wenn sich eine Quellentabellenzeile ändert.
CHGONLY Dieser Parameter gibt an, dass nur dann beim Ändern einer Quellentabellenzeile ein Eintrag in die CD-Tabelle geschrieben wird, wenn sich Werte in den für die Replikation definierten Spalten (CD-Tabellenspalten) ändern.

Terminieren von Capture für Windows und OS/2

Bei Windows: Verwenden Sie den Befehl AT, um das Capture-Programm zu einem bestimmten Zeitpunkt zu starten. Der Dienst zum Terminieren von Programmen (Windows Schedule Service) muss gestartet sein, bevor Sie den Befehl AT ausführen. Beispiel: Mit dem folgenden Befehl wird das Capture-Programm für Windows um 15:00 Uhr gestartet:

c:\>AT 15:00 /interactive "c:\SQLLIB\BIN\db2cmd.exe c:\CAPTURE\asnccp.exe warmns"

Bei OS/2: Verwenden Sie das Programm "Wecker" im OS/2-Ordner "Produktivität" (oder ein vergleichbares OS/2-Tool), um das Programm Capture für OS/2 zu einem bestimmten Zeitpunkt zu starten.

Stoppen von Capture für Windows und OS/2

Mit dem Befehl STOP oder der entsprechenden Tastenkombination können Sie das Capture-Programm ordnungsgemäß beenden und die bis dahin verarbeiteten Protokollsätze festschreiben.

Stoppen Sie das Capture-Programm, bevor Sie eine bestehende Replikationsquelle entfernen oder ändern.

Bei Windows: Wenn Sie das Capture-Programm als NT-Dienst gestartet haben, wird das Capture-Programm unabhängig von ASNSERV ausgeführt. Durch Auswahl von Replikation im Fenster "Dienste" und Anklicken von Stoppen können Sie ASNSERV, aber nicht das Capture-Programm stoppen. Durch Eingabe des Befehls ASNCMD STOP in einem Befehlsfenster können Sie das Capture-Programm stoppen.

Bei Windows und OS/2: Prüfen Sie, ob die Umgebungsvariablen gesetzt sind (vgl. Abschnitt Einrichten von Umgebungsvariablen für Capture für Windows und OS/2), bevor Sie das Capture-Programm stoppen. Um das Capture-Programm zu stoppen, gehen Sie folgendermaßen vor:

Wenn Sie die Umgebungsvariable DB2DBDFT (siehe Schritt 2) gesetzt haben, geben Sie Folgendes ein:

>>-ASNCMD--STOP------------------------------------------------><
 

Wenn Sie die Umgebungsvariable DB2DBDFT nicht gesetzt haben, geben Sie Folgendes ein:

>>-ASNCMD--quellen-server--STOP--------------------------------><
 

Unterbrechen von Capture für Windows und OS/2

Mit dem Befehl SUSPEND können Sie Ressourcen des Betriebssystems zu Zeiten hoher Systemauslastung für andere Transaktionen freigeben, ohne die Umgebung des Capture-Programms zu beeinträchtigen. Mit diesem Befehl wird das Capture-Programm unterbrochen, bis Sie den Befehl RESUME eingeben.

Prüfen Sie, ob die Umgebungsvariablen gesetzt sind (vgl. Abschnitt Einrichten von Umgebungsvariablen für Capture für Windows und OS/2), bevor Sie das Capture-Programm unterbrechen. Um das Capture-Programm zu unterbrechen, gehen Sie folgendermaßen vor:

Wenn Sie die Umgebungsvariable DB2DBDFT (siehe Schritt 2) gesetzt haben, geben Sie Folgendes ein:

>>-ASNCMD--SUSPEND---------------------------------------------><
 

Wenn Sie die Umgebungsvariable DB2DBDFT nicht gesetzt haben, geben Sie Folgendes ein:

>>-ASNCMD--quellen-server--SUSPEND-----------------------------><
 

Wichtig: Verwenden Sie den Befehl SUSPEND nicht, wenn Sie eine Replikationsquelle entfernen. Stoppen Sie stattdessen das Capture-Programm.

Wieder Aufnehmen von Capture für Windows und OS/2

Mit dem Befehl RESUME können Sie das Capture-Programm erneut starten, wenn Sie es mit dem Befehl SUSPEND unterbrochen haben.

Prüfen Sie, ob die Umgebungsvariablen gesetzt sind (vgl. Abschnitt Einrichten von Umgebungsvariablen für Capture für Windows und OS/2), bevor Sie das Capture-Programm wieder aufnehmen. Um das Capture-Programm wieder aufzunehmen, gehen Sie folgendermaßen vor:

Wenn Sie die Umgebungsvariable DB2DBDFT (siehe Schritt 2) gesetzt haben, geben Sie Folgendes ein:

>>-ASNCMD--RESUME----------------------------------------------><
 

Wenn Sie die Umgebungsvariable DB2DBDFT nicht gesetzt haben, geben Sie Folgendes ein:

>>-ASNCMD--quellen-server--RESUME------------------------------><
 

Reinitialisieren von Capture für Windows und OS/2

Der Befehl REINIT ist zu verwenden, um mit der Erfassung von Daten aus neuen Quellentabellen zu beginnen, wenn Sie eine neue Replikationsquelle hinzufügen oder über eine Anweisung ALTER ADD eine Spalte in eine Replikationsquelle und CD-Tabelle aufnehmen, während das Capture-Programm ausgeführt wird. Über den Befehl REINIT wird das Capture-Programm angewiesen, neu hinzugefügte Replikationsquellen aus der Registriertabelle abzurufen.

Der Befehl REINIT liest auch die Tabelle mit Anpassungsparametern erneut, um Änderungen an den Anpassungsparametern zu ermitteln.

Prüfen Sie, ob die Umgebungsvariablen gesetzt sind (vgl. Abschnitt Einrichten von Umgebungsvariablen für Capture für Windows und OS/2), bevor Sie das Capture-Programm reinitialisieren. Um das Capture-Programm zu reinitialisieren, gehen Sie folgendermaßen vor:

Wenn Sie die Umgebungsvariable DB2DBDFT (siehe Schritt 2) gesetzt haben, geben Sie Folgendes ein:

>>-ASNCMD--REINIT----------------------------------------------><
 

Wenn Sie die Umgebungsvariable DB2DBDFT nicht gesetzt haben, geben Sie Folgendes ein:

>>-ASNCMD--quellen-server--REINIT------------------------------><
 

Wichtig: Verwenden Sie den Befehl REINIT nicht, um das Capture-Programm nach dem Entfernen einer Replikationsquelle oder dem Löschen einer Replikationsquellentabelle zu reinitialisieren, während das Capture-Programm ausgeführt wird. Stoppen Sie stattdessen das Capture-Programm, und starten Sie es erneut mit der Option WARM oder WARMNS.

Bereinigen der CD- und UOW-Tabellen.

Mit dem Befehl PRUNE können Sie das Bereinigen der CD- und UOW-Tabellen starten.

Dieser Befehl bereinigt die Tabellen einmal.

Prüfen Sie, ob die Umgebungsvariablen gesetzt sind (vgl. Abschnitt Einrichten von Umgebungsvariablen für Capture für Windows und OS/2), bevor Sie die CD- und UOW-Tabellen bereinigen. Um den Prozess zur Bereinigung der Tabellen zu starten, geben Sie folgenden Befehl ein:

Wenn Sie die Umgebungsvariable DB2DBDFT (siehe Schritt 2) gesetzt haben, geben Sie Folgendes ein:

>>-ASNCMD--PRUNE-----------------------------------------------><
 

Wenn Sie die Umgebungsvariable DB2DBDFT nicht gesetzt haben, geben Sie Folgendes ein:

>>-ASNCMD--quellen-server--PRUNE-------------------------------><
 

Das Capture-Programm gibt die Nachricht ASN0124I aus, wenn der Befehl akzeptiert wurde und zur Verarbeitung ansteht.

Wenn Sie das Capture-Programm während des Bereinigens gestoppt oder unterbrochen haben, müssen Sie den Befehl PRUNE nochmals eingeben, um den Bereinigungsvorgang wieder aufzunehmen. Der Bereinigungsvorgang wird bei Eingabe des Befehls RESUME nicht wieder aufgenommen.

Anzeigen des Erfassungsstatus.

Mit dem Befehl GETLSEQ können Sie die Zeitmarke und die aktuelle Protokollfolgenummer abrufen. Anhand dieser Information können Sie ermitteln, bis zu welchem Punkt das Capture-Programm das DB2-Protokoll gelesen hat.

Prüfen Sie, ob die Umgebungsvariablen gesetzt sind (vgl. Abschnitt Einrichten von Umgebungsvariablen für Capture für Windows und OS/2), bevor Sie den Erfassungsstatus anzeigen. Um den Erfassungsstatus anzuzeigen, geben Sie folgenden Befehl ein:

Wenn Sie die Umgebungsvariable DB2DBDFT (siehe Schritt 2) gesetzt haben, geben Sie Folgendes ein:

>>-ASNCMD--GETLSEQ---------------------------------------------><
 

Wenn Sie die Umgebungsvariable DB2DBDFT nicht gesetzt haben, geben Sie Folgendes ein:

>>-ASNCMD--quellen-server--GETLSEQ-----------------------------><
 
Tipp:Mit dem DB2-Befehl DB2FLSN (DB2 UDB Find Log Sequence Number) können Sie die physische Protokolldatei identifizieren, die der Protokollfolgenummer zugeordnet ist. Anhand dieser Nummer können Sie Protokolldateien löschen oder archivieren, die nicht mehr vom Capture-Programm benötigt werden. Weitere Informationen finden Sie in der Veröffentlichung IBM DB2 Universal Database Command Reference.

Betrieb von Apply für Windows und OS/2

Mit den in den folgenden Abschnitten beschriebenen Befehlen kann der Administrator folgende Funktionen des Apply-Programms ausführen:

Vor dem Starten des Apply-Programms

Bevor Sie das Apply-Programm starten, prüfen Sie, ob

Starten von Apply für Windows und OS/2

Nach dem Starten des Apply-Programms wird es kontinuierlich ausgeführt, bis

Um das Apply-Programm über die NT-Dienste zu starten, gehen Sie folgendermaßen vor:

  1. Wählen Sie Replikation im Fenster "NT-Dienste" aus.
  2. Klicken Sie den Druckknopf Starten an. Das Apply-Programm wird gemäß Ihren Vorgaben in der ASCII-Datei gestartet.

Sie können den Replikationsdienst auch starten, indem Sie STRTSERV in der Windows NT-Befehlszeile eingeben.

Um das Apply-Programm auf einer Windows- oder OS/2-Plattform zu starten, gehen Sie folgendermaßen vor:

Führen Sie die folgenden Schritte von einem Windows- oder OS/2-Fenster aus:

  1. Melden Sie sich mit der Benutzer-ID an, die zur Ausführung der Replikationsaufgaben dient.
  2. Stellen Sie sicher, dass das DB2-Exemplar wie folgt eingestellt ist:

    SET DB2INSTANCE=db2-exemplarname
    
  3. Geben Sie den Befehl ASNAPPLY in dem Windows- bzw. OS/2-Fenster ein, in dem Sie auch den Befehl SET ausgeführt haben:
>>-ASNAPPLY--apply-qual----+-----------+---+-----------+-------->
                           '-strg-serv-'   +-LOADXit---+
                                           '-NOLOADXit-'
 
>-----+----------+---+---------+---+---------+---+----------+--->
      +-INAMsg---+   +-NOTRC---+   '-TRCFILE-'   +-NOTIFY---+
      '-NOINAMsg-'   +-TRCERR--+                 '-NONOTIFY-'
                     '-TRCFLOW-'
 
>-----+---------+---+------------+---+----------+--------------->
      +-SLEEP---+   +-DELAY(n)---+   '-COPYONCE-'
      '-NOSLEEP-'   '-ERRWAIT(n)-'
 
>-----+----------+---+-----------+---+----------+--------------><
      '-LOGREUSE-'   '-LOGSTDOUT-'   '-TRLREUSE-'
 

In Tabelle 31 werden die Aufrufparameter definiert.

Tabelle 31. ASNAPPLY-Aufrufparameterdefinitionen für Windows- und OS/2-Plattformen
Parameter Definition
apply-qual Gibt das Apply-Qualifikationsmerkmal an, das von dem Apply-Exemplar verwendet wird, um die zu bearbeitenden Subskriptionsgruppen zu identifizieren. Bei Angabe des Apply-Qualifikationsmerkmals muss die Groß-/Kleinschreibung beachtet werden. Die Eingabe muss mit dem APPLY_QUAL-Wert in der Subskriptionsgruppentabelle übereinstimmen. Dieser Parameter muss als Erstes angegeben werden.
strg-serv Gibt den Namen des Servers an, auf dem sich die Replikationssteuertabellen befinden werden. Wenn Sie diesen Parameter nicht angeben, wird standardmäßig die Standarddatenbank oder der Wert von DB2DBDFT verwendet.
LOADXit Gibt an, dass ASNLOAD vom Apply-Programm aufgerufen werden soll. Die von IBM gelieferte Exit-Routine ASNLOAD verwendet die Dienstprogramme zum Exportieren und Laden, um die Zieltabellen zu aktualisieren.
NOLOADXit  (Standardwert)  Gibt an, dass das Programm ASNLOAD nicht vom Apply-Programm aufgerufen werden soll.
INAMsg  (Standardwert)  Gibt an, dass das Apply-Programm eine Nachricht ausgeben soll, wenn das Apply-Programm inaktiv ist.
NOINAMsg Gibt an, dass das Apply-Programm diese Nachricht nicht ausgeben soll.
NOTRC  (Standardwert)  Gibt an, dass das Apply-Programm keinen Trace generiert.
TRCERR Gibt an, dass das Apply-Programm einen Trace generiert, der nur Fehlerinformationen enthält.
TRCFLOW Gibt an, dass das Apply-Programm einen Trace generiert, der Informationen zu Fehlern und zum Ausführungsablauf enthält.
TRCFILE Wird trcfile zusammen mit trcerr oder trcflow angegeben, schreibt das Apply-Programm die Trace-Ausgabe in die Trace-Datei (*.trc). Geben Sie die Option nicht an, sendet das Apply-Programm die Trace-Ausgabe an die Standardausgabe (stdout).
NOTIFY Gibt an, dass das Apply-Programm die Routine ASNDONE aufrufen soll. Diese Exit-Routine gibt die Steuerung an den Benutzer zurück, sobald das Apply-Programm eine Subskriptionsgruppe vollständig kopiert hat.
NONOTIFY  (Standardwert)  Gibt an, dass das Apply-Programm das Programm ASNDONE nicht aufrufen soll.
SLEEP (Standardwert)  Gibt an, dass das Apply-Programm inaktiviert werden soll, wenn keine neuen Subskriptionsgruppen für die Verarbeitung ausgewählt werden können.
NOSLEEP Gibt an, dass das Apply-Programm gestoppt werden soll, wenn keine neuen Subskriptionsgruppen für die Verarbeitung ausgewählt werden können.
DELAY(n) Gibt die Verzögerungszeit (in Sekunden) am Ende jedes Zyklus des Apply-Programms an, wenn die fortlaufende Replikation verwendet wird. Dabei ist n=0, 1, 2, 3, 4, 5 oder 6. Die Standardverzögerungszeit beträgt 6 Sekunden.
ERRWAIT(n) Gibt die Wartezeit (in Sekunden) an, bevor das Apply-Programm einen neuen Verarbeitungsversuch startet, nachdem es eine Fehlerbedingung festgestellt hat. Dabei gibt n die Anzahl Sekunden an. Wählen Sie Wert nicht zu klein, weil das Apply-Programm nahezu ohne Unterbrechung ausgeführt wird und eine große Zahl von Zeilen in der Apply-Prüfprotokolltabelle generiert. Die Standardwartezeit beträgt 300 Sekunden (5 Minuten).
COPYONCE Das Apply-Programm führt einen Kopierzyklus für jede Subskriptionsgruppe aus, die beim Aufruf des Apply-Programms auswählbar ist, und wird anschließend beendet. Auswählbare Subskriptionsgruppen sind wie folgt charakterisiert:

  • ACTIVATE > 0
  • REFRESH_TIMING = R oder B oder REFRESH_TIMING = E und das angegebene Ereignis ist eingetreten.
MAX_SYNCH_MINUTES und END_OF_PERIOD werden berücksichtigt (falls angegeben).
LOGREUSE Das Apply-Programm verwendet die Protokolldatei (*.app) immer wieder. Dazu wird die Datei beim Start des Apply-Programms jeweils gelöscht und neu erstellt. Geben Sie diese Option nicht an, hängt das Apply-Programm die Nachrichten an die Protokolldatei an. Dies gilt auch nach einem Neustart des Apply-Programms.
LOGSTDOUT Das Apply-Programm sendet alle Nachrichten an die Standardausgabe (stdout) und an die Protokolldatei.
TRLREUSE Wenn das Apply-Programm gestartet wird, löscht es den Inhalt der Apply-Prüfprotokolltabelle.

Terminieren von Apply für Windows und OS/2

Bei Windows: Verwenden Sie den Windows-Befehl AT, um das Apply-Programm zu einem bestimmten Zeitpunkt zu starten. Der Dienst zum Terminieren von Programmen (Windows Schedule Service) muss gestartet sein, bevor Sie den Befehl AT ausführen. Beispiel: Mit dem folgenden Befehl wird das Apply-Programm für Windows um 15:00 Uhr gestartet:

c:\>AT 15:00 /interactive "c:\SQLLIB\BIN\db2cmd.exe
    c:\SQLLIB\BIN\asnapply.exe qualid1 cntldb"

Bei OS/2: Verwenden Sie das Programm "Wecker" im OS/2-Ordner "Produktivität" (oder ein vergleichbares OS/2-Tool), um das Apply-Programm zu einem bestimmten Zeitpunkt zu starten.

Stoppen von Apply für Windows und OS/2

Mit dem Befehl ASNASTOP oder der entsprechenden Tastenkombination können Sie das Apply-Programm ordnungsgemäß beenden.

Zum Stoppen des Befehls gehen Sie folgendermaßen vor (die Eingaben müssen in einem Fenster erfolgen, in dem das Apply-Programm nicht ausgeführt wird):

  1. Setzen Sie die Umgebungsvariable DB2INSTANCE auf den Wert, der beim Start des Apply-Programms eingestellt war.
  2. Setzen Sie die Umgebungsvariable DB2DBDFT auf den Quellen-Server, der beim Start des Apply-Programms angegeben wurde (oder auf den Wert DB2DBDFT, der beim Start des Apply-Programms verwendet wurde).
  3. Geben Sie den Befehl ein.

>>-ASNASTOP--apply-qual----------------------------------------><
 

Bedarfsgesteuerte Replikation (nur 32-Bit-Windows-Betriebssysteme)

Bei 32-Bit-Windows-Betriebssysteme können Sie Daten mit dem Befehl ASNSAT bei Bedarf replizieren. Der Befehl startet das Apply-Programm und - falls die Registriertabelle Zeilen enthält - auch das Capture-Programm. (Sie können aber nicht angeben, dass nur eines der Programme Capture und Apply oder beiden Programme ausgeführt werden sollen.) Wenn das Capture-Programm über den Befehl ASNSAT gestartet wird, wird es auf demselben Server ausgeführt wie das Apply-Programm. Jedes Programm wird automatisch wieder beendet, wenn es seine Aufgabe innerhalb des Replikationszyklus erfüllt hat.

Die wahlfreien Capture- und Apply-Parameter für diesen Befehl wurden für die Satellitenumgebung optimiert. Weitere Informationen zur Verwendung des Befehls ASNSAT in einer Satellitenumgebung enthält die Veröffentlichung Administering Satellites Guide and Reference. Sie können die wahlfreien Parameter für die Programme Capture und Apply außer Kraft setzen, wenn Sie den Befehl in einer Satellitenumgebung verwenden.

Die Syntax des Befehls ASNSAT lautet wie folgt:

>>-ASNSAT----+------------------+---+-----------------+--------->
             '- -q--apply-qual--'   '- -n--strg-serv--'
 
>-----+-----------------+--------------------------------------->
      '- -t--ziel-serv--'
 
>-----+-------------------------------------------+------------->
      |      .---------------------------------.  |
      |      V                                 |  |
      '- -c-----wahlfreier Capture-Parameter---+--'
 
>-----+-----------------------------------------+--------------><
      |      .-------------------------------.  |
      |      V                               |  |
      '- -a-----wahlfreier Apply-Parameter---+--'
 

Tabelle 32. ASNSAT-Optionen und Aufrufparameterdefinitionen (nur bei 32-Bit-Windows-Betriebssystemen)
Option Definition
-q apply-qual Gibt das Apply-Qualifikationsmerkmal an, das von dem Exemplar des Apply-Programms verwendet wird, um die zu bearbeitenden Subskriptionen zu identifizieren. Bei Angabe des Apply-Qualifikationsmerkmals muss die Groß-/Kleinschreibung beachtet werden. Die Eingabe muss mit dem Wert der Spalte APPLY_QUAL in der Subskriptionsgruppentabelle übereinstimmen. Dieser Parameter muss als Erstes angegeben werden.
-n strg-serv Gibt den Namen des Servers an, auf dem sich die Replikationssteuertabellen befinden werden. Wenn Sie diesen Parameter nicht angeben, wird standardmäßig die Standarddatenbank oder der Wert von DB2DBDFT verwendet.
-t ziel-serv Gibt den Namen des Servers an, auf dem sich die Zieltabellen befinden werden.
-c Gibt die wahlfreien Aufrufparameter für das Capture-Programm an. Wenn Sie diese Option nicht angeben, verwendet der Befehl ASNSAT die folgenden Standardwerte: warm, prune, notrace, logreuse, logstdout, trcfile, notrctbl und autostop.
-a Gibt die wahlfreien Aufrufparameter für das Apply-Programm an. Wenn Sie diese Option nicht angeben, verwendet der Befehl ASNSAT die folgenden Standardwerte: noinam, notrc, nonotify, logreuse, logstdout, trcfile, trlreuse, copyonce und loadx.

Weitere Informationen zu den Parametern für die Programme Capture und Apply enthält Tabelle 30 bzw. Tabelle 31.


Verwendung von DB2 DataPropagator für Microsoft Jet

DataPropagator für Microsoft Jet unterstützt Microsoft Access- und Microsoft Jet-Datenbanken im LAN, in zeitweise verbundenen und in mobilen Umgebungen. Ohne jeglichen Programmierungsaufwand können Sie Ihre Server-Daten in Microsoft Access-Tabellen replizieren und dort anzeigen und ändern.

DataPropagator für Microsoft Jet umfasst nur ein ausführbares Programm, das die Capture- und Apply-Funktionalität sowie einen Teil der Verwaltungsfunktion enthält. DataPropagator für Microsoft Jet wird auf einer Client-Maschine unter Microsoft Windows NT oder Windows 95 ausgeführt und stellt die Verbindung zu den Quellendatenbanken über DB2 Client Application Enabler (CAE) her. DataPropagator für Microsoft Jet ist im Lieferumfang von DB2 DataJoiner Version 2 Release 2.1.1 enthalten (Sie benötigen den DB2 DataJoiner-Server nicht zur Ausführung der Software), kann aber genauso mit DB2 Universal Database (DB2 UDB), DB2 Version 2 (Server-Version) und DB2 Connect ausgeführt werden. Voraussetzung für den Betrieb von DataPropagator für Microsoft Jet ist, dass das Verwaltungs-Tool DJRA (DataJoiner Replication Administration) am Steuerpunkt installiert ist.

DataPropagator für Microsoft Jet dient zur Replikation relationaler Tabellen in und aus Microsoft Jet-Datenbanken sowie zur Erkennung und Aufzeichnung von Aktualisierungskonflikten (anhand des Microsoft Jet-Replikationsmodells). Der Quellen-Server kann eine DB2- oder Nicht-DB2-Replikationsquelle sein, die mittels DB2 DataJoiner definiert wurde. Als Steuerungs-Server kommt nur eine DB2- oder DB2 DataJoiner-Datenbank in Frage.

Abbildung 22 zeigt, wie DataPropagator für Microsoft Jet die Replikation von Microsoft Access- und Microsoft Jet-Datenbanken unterstützt.

Abbildung 22. Microsoft Jet-Datenbankreplikation. DataPropagator für Microsoft Jet erweitert die IBM Lösung zur Datenreplikation durch die Unterstützung von Microsoft Access- und Microsoft Jet-Datenbanken.

Microsoft Jet-Datenbankreplikation

Die Vorteile des Einsatzes von DataPropagator für Microsoft Jet

Ein kleineres Datenbankverwaltungssystem, das eine replizierte Teilmenge einer großen Unternehmensdatenbank darstellt, ermöglicht Kundendienstmitarbeitern und anderen mobilen Benutzern das Ausführen vollwertiger Desktop-Anwendungen, während keine Verbindung zum Server-Netzwerk besteht. Diese Benutzer stellen nur bei Bedarf eine Verbindung zum Unternehmensnetzwerk her, die dann auch in der Regel nur so lange aufrechterhalten wird, wie dies zum Synchronisieren der Desktop-Datenbank, der E-Mail- und Nachrichtenservices mit den Unternehmens-Servern erforderlich ist. Näheres zum Erstellen solcher Teil- oder Untermengen enthält der Abschnitt Bilden von Spalten- und Zeilenuntermengen.

Für die Verwaltung von DataPropagator für Microsoft Jet ist keine direkte Verbindung zu einer Microsoft Jet-Datenbank erforderlich. DJRA verwaltet die Steuerinformationen in der Steuerungs-Server-Datenbank. Bei Ausführung von DataPropagator für Microsoft Jet auf einem Laptop-Computer ist das Erstellen von Microsoft Jet-Datenbanken, Tabellen und zusätzlichen Spalten sowie das Löschen von Tabellen und alten Spalten anhand des aktuellen Status der Steuerinformationen auf dem Server möglich. Zur Implementierung einer Microsoft Jet-Anwendung müssen die Anwendung, die Datenbank und die Replikationssoftware vor dem Verteilen der Laptop-Computer installiert sein. Die Microsoft Jet-Datenbank muss aber nicht im Voraus erstellt werden.

Sie können die Replikationsquelle und Subskriptionsdefinitionen für eine Microsoft Jet-Datenbank über DJRA jederzeit (erneut) definieren, bevor oder nachdem Sie die Laptop-Computer für die asynchrone Verarbeitung durch DataPropagator für Microsoft Jet verteilen bzw. verteilt haben.

Treten Probleme bei der Datenbank auf Ihrem Laptop-Computer auf, können Sie die Microsoft Jet-Datenbank mit den Tabellen und dem Inhalt neu erstellen, indem Sie die Microsoft Jet-Datenbank löschen und mit DataPropagator für Microsoft Jet erneut synchronisieren. Mit DataPropagator für Microsoft Jet kann die Datenbank automatisch wiederhergestellt werden.

Weitere Informationen zu mobilen Replikationsszenarios enthält der Abschnitt Zeitweise verbundene Systeme.

Datenintegrität

In einem Netzwerk von DB2-Datenbanken unterstützt DB2 DataPropagator das Modell der so genannten beliebigen Tabellenreplikation, das Transaktionskonflikte erkennen kann. DataPropagator für Microsoft Jet unterstützt ebenfalls die beliebige Tabellenreplikation, die allerdings über eine weniger umfassende Funktion zur Erkennung von Zeilenkonflikten verfügt (ähnlich dem Standard-Microsoft Jet-Modell). Wenn Sie sich für die Verwendung von DataPropagator für Microsoft Jet entscheiden, sollten Sie das Standard-Microsoft Jet-Replikationsmodell kennen und für eine geeignete Lösung für Ihren Anwendungsfall halten.

DataPropagator für Microsoft Jet berichtet Synchronisationskonflikte in Konflikttabellen, wie dies in ähnlicher Weise auch bei der integrierten Microsoft Jet-Replikationsfunktion geschieht. Bei diesem Verfahren können Aktualisierungen verloren gehen. Bei Einsatz der Einzelbenutzerversion des DB2 Universal Database-Servers auf Ihrem Laptop-Computer ist für Ihre Anwendung beispielsweise eine Alles-oder-Nichts-Transaktionssemantik bei der Synchronisation mit den Unternehmens-Servern gewährleistet. Wenn Sie Microsoft Jet als mobile Datenbank verwenden, werden Synchronisationskonflikte aber zeilenweise behandelt, d. h., Aktualisierungen können verloren gehen. Somit können einige Änderungen als widersprüchlich gekennzeichnet sein, während andere in die Unternehmensdatenbank integriert werden. Wenn dies nicht akzeptabel ist, müssen Sie eigene Lösungen für alle potenziellen Aktualisierungskonflikte programmieren. Weitere Informationen dazu, wie DataPropagator für Microsoft Jet Konfliktfehler behandelt, finden Sie im Abschnitt Fehlerbehebung. Näheres zum Programmieren eigener Lösungen können Sie in der entsprechenden Microsoft-Dokumentation nachlesen.

Terminologie zur Replikation mit DataPropagator für Microsoft Jet

Im Folgenden werden einige Fachbegriffe erklärt, die im Zusammenhang mit der Replikation bei Microsoft Jet-Datenbanken verwendet werden. Definitionen allgemeiner Replikationsbegriffe finden Sie im Glossar.

Client
Die Windows NT- oder Windows 95-Maschine, auf der DataPropagator für Microsoft Jet installiert ist.

Design Master
Bei der Microsoft Jet-Datenbankreplikation ist dies die ursprüngliche Datenbank, die als Master-Datenbank gesichert wird. Jede im weiteren Verlauf erstellte Kopie der Microsoft Jet-Datenbank, die von der Microsoft Jet-Replikation auf einem anderen Server verwaltet wird, wird als Replikat bezeichnet.

Zeilenreplikat
Eine Art von Replikat für die beliebige Tabellenreplikation, das von DataPropagator für Microsoft Jet verwaltet wird. Konflikte werden auf Zeilenebene, nicht auf Transaktionsebene ermittelt, wie dies bei Replikaten der Fall ist. Das Zeilenreplikat ist die einzige, von DataPropagator für Microsoft Jet unterstützte Zieltabellenart. Zulässige Quellentabellen sind DB2-, Oracle-, Sybase-, Informix- oder Microsoft SQL Server-Benutzertabellen oder DB2-Replikate. Als Quelle kommt auch eine Sicht einer DB2-Benutzertabelle oder eines DB2-Replikats in Frage, einschließlich einer Verknüpfungssicht. Dabei besteht lediglich die Einschränkung, dass sämtliche kopierten Spalten aus einer der Tabellen stammen müssen, auf die in der Quellensicht Bezug genommen wird. Auf die anderen Spalten in der Quellensicht kann in den Subskriptionsprädikaten Bezug genommen werden, die Spalten können jedoch nicht in das Zeilenreplikat aufgenommen werden.

Einrichten der Replikation mit DataPropagator für Microsoft Jet

Um mit der Replikationsumgebung arbeiten zu können, müssen Sie die Replikationsquellen, die Steuerungs-Server und die Client-Umgebung vorbereiten. Die folgenden Abschnitte enthalten Anweisungen zur Vorbereitung Ihrer Replikationsumgebung.

Vorbereiten der Replikationsquelle und der Steuerungs-Server

Sie bereiten den Server zur Verwendung von DataPropagator für Microsoft Jet genauso vor wie beim Arbeiten mit DB2 DataPropagator. Um den Server vorzubereiten, gehen Sie folgendermaßen vor:

  1. Erstellen Sie unter Verwendung von DJRA die erforderlichen Replikationssteuertabellen auf dem Steuerungs-Server.
  2. Definieren Sie die Replikationsquellen, indem Sie die Quellentabellen auf jedem Quellen-Server mit DJRA definieren.
  3. Definieren Sie die Subskriptionsgruppen mit DJRA. Wählen Sie im Fenster "Create Empty Subscription Sets" das Markierungsfeld Microsoft Jet aus, und geben Sie den Namen des Microsoft Jet-Ziel-Servers an. Der Name des Ziel-Servers muss sich in diesem Fall von dem Namen des Steuerungs-Servers unterscheiden.
  4. Starten Sie das Capture-Programm für jeden DB2-Quellen-Server (falls zutreffend).

Vorbereiten der Client-Umgebung

Um den Client vorzubereiten, installieren Sie die folgende Software (wenn dies nicht bereits geschehen ist):

  1. Installieren Sie DB2 Client Application Enabler (CAE), und konfigurieren Sie die DB2-Konnektivität zu den Quellen- und Steuerungs-Servern für die entsprechenden Kommunikationsprotokolle.
  2. Konfigurieren Sie den DB2-ODBC-Treiber über das Fenster "DB2 Client Configuration Assistant".
  3. Installieren Sie eines der folgenden Produkte:
  4. Installieren Sie die DAO-Komponente (kann von http://www.nesbitt.com/bctech.html heruntergeladen werden, ist aber auch auf der CD-ROM von Microsoft Visual C++ Version 5 enthalten).
  5. Installieren Sie DataPropagator für Microsoft Jet (während der Installation von DB2 DataJoiner).

Authentifizierung der Endbenutzer

Wenn der Quellen- oder Steuerungs-Server eine Authentifizierung erfordert, müssen Sie eine Kennwortdatei erstellen.

Um eine Kennwortdatei zu erstellen, gehen Sie folgendermaßen vor:

Die Kennwortdatei muss folgende Anforderungen erfüllen:

Weitere Informationen zu Authentifizierung und Sicherheit enthält die Veröffentlichung DataJoiner Administration Supplement.

Betrieb von DataPropagator für Microsoft Jet

Im folgenden Abschnitt werden die Befehle von DataPropagator für Microsoft Jet beschrieben.

Sie erhalten Informationen zur Ausführung der folgenden Aufgaben:

Starten des Capture-Programms auf dem Quellen-Server

Bevor Sie DataPropagator für Microsoft Jet aktivieren, muss zunächst das Capture-Programm auf jedem DB2-Quellen-Server (falls zutreffend) gestartet werden.

Starten von DataPropagator für Microsoft Jet

Bevor Sie DataPropagator für Microsoft Jet aktivieren, müssen Sie zunächst die erforderliche Wähl- oder LAN-Verbindung herstellen. DataPropagator für Microsoft Jet selbst stellt keine Kommunikationsverbindung her. Der Server muss manuell oder über entsprechende Software angewählt werden, um eine Verbindung herzustellen, bevor DataPropagator für Microsoft Jet zum Ausführen der Datenbanksynchronisation aufgerufen wird.

Starten Sie DataPropagator für Microsoft Jet mit dem Befehl ASNJET. Geben Sie den Befehl ASNJET bei der Eingabeaufforderung ein.

>>-ASNJET--apply-qual--strg-srvr----+----------+---+---------+-->
                                    +-INAMSG---+   +-NOTRC---+
                                    '-NOINAMSG-'   +-TRCERR--+
                                                   '-TRCFLOW-'
 
>-----+----------+---+----------+------------------------------><
      +-NOTIFY---+   +-MOBILE---+
      '-NONOTIFY-'   '-NOMOBILE-'
 

In Tabelle 33 werden die einzelnen Parameter definiert.

Tabelle 33. Parameterdefinitionen für den Befehl ASNJET bei DataPropagator für Microsoft Jet
Parameter Definition
apply-qual Gibt das Apply-Qualifikationsmerkmal an, das diesen Client eindeutig identifiziert.
strg-srvr Gibt den Aliasnamen des Steuerungs-Servers an.
INAMSG Gibt an, dass DataPropagator für Microsoft Jet immer dann eine Inaktivitätsnachricht an das Protokoll ausgeben soll, wenn DataPropagator für Microsoft Jet bis zum nächsten Kopierzyklus inaktiviert wird. Diese Option wird bei Angabe von MOBILE ignoriert.
NOINAMSG (Standardwert) Gibt an, dass keine Inaktivitätsnachricht ausgegeben werden soll.
NOTRC (Standardwert)
TRCERR Gibt an, dass eine Trace-Datei mit nur den wichtigsten Informationen erstellt werden soll.
TRCFLOW Gibt an, dass eine Trace-Datei mit ausführlichen Informationen erstellt werden soll.
NOTIFY Gibt an, dass DataPropagator für Microsoft Jet die Exit-Routine ASNJDONE bei Beendigung jeder Subskriptionsgruppe aufrufen soll, unabhängig davon, ob die Ausführung erfolgreich war oder nicht.
NONOTIFY  (Standardwert)  Gibt an, dass DataPropagator für Microsoft Jet die Exit-Routine ASNJDONE nicht aufrufen soll.
MOBILE Gibt an, dass DataPropagator für Microsoft Jet im mobilen Modus ausgeführt werden soll (alle aktiven Subskriptionen nur einmal kopieren und dann beenden).
NOMOBILE  (Standardwert)  Gibt an, dass DataPropagator für Microsoft Jet fortlaufend ausgeführt werden soll, bis das Programm mit dem Befehl ASNJSTOP gestoppt wird.

Beispiel 1: Wenn Sie den folgenden Befehl bei der Eingabeaufforderung eingeben, wird DataPropagator für Microsoft Jet mit dem Apply-Qualifikationsmerkmal MYQUAL aufgerufen, als Steuerungs-Server wird CNTLSRVR verwendet, es wird keine Inaktivitätsnachricht angezeigt und kein Trace ausgeführt, die Exit-Routine ASNJDONE wird nicht aufgerufen, und die aktiven Subskriptionen werden nur einmal kopiert. Danach wird das Programm beendet.

ASNJET MYQUAL CNTLSRVR MOBILE

Beispiel 2: Wenn Sie den folgenden Befehl bei einer Eingabeaufforderung eingeben, wird DataPropagator für Microsoft Jet mit dem Apply-Qualifikationsmerkmal AQ2 aufgerufen, als Steuerungs-Server wird CNTLSRV verwendet, ein ausführlicher Trace wird erstellt, und das Programm wird fortlaufend ausgeführt, bis Sie es mit dem Befehl ASNJSTOP stoppen.

ASNJET AQ2 CNTLSRV TRCFLOW NOMOBILE

Stoppen von DataPropagator für Microsoft Jet

Wenn Sie DataPropagator für Microsoft Jet mit der Option MOBILE starten, wird es ausgeführt, bis alle aktiven Subskriptionen verarbeitet wurden. Anschließend wird das Programm automatisch beendet. Mit dem Befehl ASNJSTOP kann DataPropagator für Microsoft Jet ordnungsgemäß gestoppt werden, sobald die aktuelle Subskriptionsgruppe kopiert wurde. Dabei werden die Protokollsätze festgeschrieben, die bis zu diesem Zeitpunkt verarbeitet wurden.

Verwenden Sie den folgenden Befehl, um DataPropagator für Microsoft Jet zu stoppen. Geben Sie den Befehl ASNJSTOP bei der Eingabeaufforderung ein.

>>-ASNJSTOP--apply-qual----------------------------------------><
 

Dabei ist apply-qual das Apply-Qualifikationsmerkmal, das Sie beim Starten von DataPropagator für Microsoft Jet mit dem Befehl ASNJET verwendet haben.

Beispiel: Wenn Sie den folgenden Befehl bei einer Eingabeaufforderung eingeben, beendet DataPropagator für Microsoft Jet die Verarbeitung des Apply-Qualifikationsmerkmals MQUAL, sobald die aktuelle Subskriptionsgruppe verarbeitet wurde.

ASNJSTOP MYQUAL

Wenn das Fenster, in dem das Programm ausgeführt wird, aktiv ist, können Sie auch eine der folgenden Tastenkombinationen verwenden, um DataPropagator für Microsoft Jet zu stoppen:

Fehlerbehebung bei DataPropagator für Microsoft Jet

Wenn beim Ausführen des Programms ASNJET Fehler auftreten, stellen Sie sicher, dass

Weitere Informationen zu Fehlernachrichten finden Sie in Kapitel 15, Nachrichten der Programme Capture und Apply. Informationen zur Fehlerbehebung befinden sich im Abschnitt Fehlerbehebung.

Rückgabe der Steuerung an die Benutzer mit der Exit-Routine ASNJDONE

Wenn Sie den Parameter NOTIFY beim Starten von DataPropagator für Microsoft Jet mit dem Befehl ASNJET angeben, ruft DataPropagator für Microsoft Jet die Exit-Routine ASNJDONE bei Beendigung jeder Subskriptionsgruppe auf, unabhängig davon, ob die Ausführung erfolgreich war oder nicht. Im Produktumfang ist ein Beispielprogramm mit dem Namen ASNJDONE.SMP enthalten. Dieses Programm können Sie an die speziellen Anforderungen Ihrer Installation anpassen. Beispielsweise kann die Exit-Routine in der Fehlertabelle nach zurückgewiesenen Aktualisierungen suchen und weitere Aktionen einleiten, wie z. B. die Ausgabe einer Nachricht oder das Generieren eines Alerts.

Im Prologabschnitt der Exit-Routine ASNJDONE.SMP finden Sie Hinweise zum Ändern dieses Beispielprogramms.

Parameter

DataPropagator für Microsoft Jet übergibt folgende Parameter an das Programm ASNJDONE:

Steuerungs-Server
Gibt den Aliasnamen des Steuerungs-Servers an.

Gruppenname
Gibt den Namen der gerade verarbeiteten Gruppe an.

Apply-Qualifikationsmerkmal
Gibt das Apply-Qualifikationsmerkmal dieses Exemplars von DataPropagator für Microsoft Jet an.

Trace-Option
Gibt die Trace-Option an, die beim Start von DataPropagator für Microsoft Jet angegeben wurde.

Statuswert
Wird bei erfolgreicher Ausführung auf 0, bei fehlgeschlagener Ausführung auf -1 gesetzt.

Fehlerbehebung

Wenn DataPropagator für Microsoft Jet den Statuswert -1 an das Programm ASNJDONE übergeben hat, wurden möglicherweise Konflikte oder Fehler aufgezeichnet. Sie können die Exit-Routine so einstellen, dass sie die Fehlercodes und -nachrichten in der Fehlernachrichtentabelle überprüft. (Die Tabelle mit den Fehlernachrichten kann mehr als eine Zeile enthalten.)

Wenn DataPropagator für Microsoft Jet einen Aktualisierungskonflikt zwischen der Quellentabelle des Verwaltungssystems für relationale Datenbanken und der Zeilenreplikattabelle feststellt, werden die folgenden zusätzlichen Informationen für die Exit-Routine ASNJDONE gesichert:

Bei anderen Fehlern (wie z. B. Verstöße gegen die referenzielle Integrität) stellt DataPropagator für Microsoft Jet zusätzliche Informationen in die Tabelle für Fehlerinformationen (falls zutreffend), um die Zeilenreplikattabelle und die Zeile anzugeben, die den Fehler verursachte.

Die Exit-Routine kann anhand dieser Informationen Maßnahmen zur Fehlerbehebung durchführen. Nach Ausführung der Exit-Routine ist der Status in der Tabelle für Subskriptionsgruppen immer noch -1. DataPropagator für Microsoft Jet erwartet keine Ausgabe oder Rückkehrcodes von der Exit-Routine.

DataPropagator für Microsoft Jet-Steuertabellen

Bei DataPropagator für Microsoft Jet sind neben den bereits vorhandenen DB2 DataPropagator-Steuertabellen die in den folgenden Abschnitten beschriebenen neuen Steuertabellen erforderlich. Weitere Informationen zur Spalten- und Indexdefinition für jede dieser neuen Steuertabellen befinden sich in Kapitel 14, Tabellenstrukturen.

Tabellen auf dem Steuerungs-Server

Tabelle mit Zeilenreplikatliste
Verwaltet die Namen der Zeilenreplikattabellen. Dies ermöglicht DataPropagator für Microsoft Jet die Verwaltung einer Liste bekannter Zeilenreplikattabellen in einer stabilen DB2- oder DB2 DataJoiner-Datenbank. DataPropagator für Microsoft Jet verwendet diese Informationen bei der Schemaanalyse, um zu ermitteln, welche Zeilenreplikattabellen (falls vorhanden) gelöscht werden sollen, weil der entsprechende Subskriptionseintrag nach der letzten Synchronisation entfernt wurde.

Tabelle für Subskriptionsschemaänderungen
Weist auf Änderungen an einer Subskription hin.

Tabellen auf dem Ziel-Server

Konflikttabelle
Diese Tabelle (eine pro Zieltabelle, entsprechend dem Bedarf beim Ziel-Server) enthält Zeilendaten für Konfliktverlierer, die von DataPropagator für Microsoft Jet ermittelt wurden. Wenn ein Konflikt zwischen derselben Zeile in der Microsoft Jet-Datenbank (Ziel-Server) und in der Quellen-Server-Datenbank auftritt, "unterliegt" die Zeile in der Microsoft Jet-Datenbank. Sie wird in die Konflikttabelle aufgenommen und durch die Zeile in der Quelle ersetzt.

Tabelle für Fehlerinformationen
Diese Tabelle enthält zusätzliche Informationen zur Identifizierung der Zeilenreplikattabelle und Zeile, die den Fehler verursachte.

Tabelle für Fehlernachrichten
Diese Tabelle enthält Fehlercodes und Fehlernachrichten.

Tabelle für Fehlernebeninformationen
Diese Tabelle enthält die Namen der Konflikttabellen.

Schlüsseltabelle
Diese Tabelle ordnet Microsoft Jet-Tabellenkennungen und -Zeilenkennungen bestimmten Primärschlüsselwerten zu.

Tabelle für Synchronisationsgenerationen
Diese Tabelle wird verwendet, um zu verhindern, dass zyklische Aktualisierungen aus einer Microsoft Jet-Datenbank an das Verwaltungssystem für relationale Datenbanken (RDBMS) zurückgegeben werden.

Fußnoten:

33
Normalerweise wird das Apply-Paket automatisch für Sie erstellt; wenn Sie das Apply-Programm aber manuell konfigurieren, müssen Sie das Apply-Paket explizit binden.


[ Seitenanfang | Vorherige Seite | Nächste Seite | Inhaltsverzeichnis | Index ]