Um einen automatischen Sicherungsbetrieb und Recovery-Betrieb zu realisieren, versorgt das Dienstprogramm BMEND eine Jobvariable. Diese Jobvariable können andere Programme bzw. Prozeduren zur Steuerung verwenden.
Die Jobvariable wird versorgt, wenn eine Jobvariable mit LINK-NAME=JVBMEND eingerichtet ist.
BMEND benutzt den Inhalt der Jobvariablen nicht als Eingabe, sondern aktualisiert nur am Ende bestimmter Funktionen relevante Werte.
Die Versorgung dieser Jobvariablen gliedert sich - intern - in zwei Teile:
Initialisieren durch SHOW-LOG-INFORMATION
Aktualisieren durch UPDATE-DATABASE
Durch das Initialisieren der Jobvariablen (Anweisung SHOW-LOG-INFORMATION) werden erste Entscheidungshilfen gegeben, um Recovery-Maßnahmen einzuleiten.
Sie als Anwender müssen anschließend entscheiden, ob die gelieferten Informationen ausreichend sind. Möglicherweise müssen Sie die Initialisierung wiederholen, indem Sie in der Anweisung SHOW-LOG-INFORMATION den Operanden LOG-FILE modifizieren.
Die Jobvariable enthält folgende Informationsbereiche:
Zustand des bearbeiteten DBDIR
Zustand eines Log Pool-Ausschnitts (allgemein)
Zustand eines Log Pool-Ausschnitts bzgl. AFIM-Logging
Folgenummern für weitere Einspielvorgänge
Anweisungsfolge
|
Struktur der Jobvariablen
DISPL
| ||
( 0) DBDIR_DATA | beschreibt Zustand des DBDIR, auf den zugegriffen wird; wird von UPDATE gelöscht | |
( 0) ALOG_SEQ_NR | ALOG_SEQ_NR aus DBDIR | |
( 4) CONSISTENCY_DATA | BACK_UP_DATA aus DBDIR; Zeitpunkt der letzten Änderung in der Datenbank | |
( 18) CONSISTENT | CONSISTENCY / C‘Y‘ oder C‘N‘ C‘N‘: wenn SYSTEM_BREAK in AK0 oder AKn gesetzt oder wenn AK0 ungleich AKn ist | |
( 19) FILLER | | |
( 20) COMMON_LOG_DATA | gibt Grenzen der untersuchten ALOG-Dateien-Sequenz an; ältester und jüngster Eintrag der Historie wird von UPDATE gelöscht | |
( 20) HIGHEST_ALOG_SEQ_NR | höchste Folgenummer, deren Historie in der zu gewiesenen ALOG-Datei hinterlegt ist | |
( 24) LOWEST_ALOG_SEQ_NR | niedrigste Folgenummer, deren Historie in der zugewiesenen ALOG-Datei hinterlegt ist | |
( 28) LOG_POOL_PART_END_DATA | YYYYMMDDHHMMSS; LOG_INTERVAL_END der im LOG-FILE-Operanden zugewiesenen ALOG-Datei | |
( 42) LOG_POOL_PART_BEGIN_DATA | YYYYMMDDHHMMSS | |
( 56) AFIM_LOG_DATA
| Angaben zum jüngsten Log-Intervall mit lückenloser AFIM-Protokollierung aus der Historie; falls untersuchter Bereich ohne AFIMs, dann gleich 0; wird von UPDATE gelöscht | |
|
( 56) UPPER_ALOG_SEQ_NR | höchste Folgenummer des untersuchten Log Pool-Ausschnitts mit AFIMs |
|
( 60) LOWER_ALOG_SEQ_NR | niedrigste Folgenummer des untersuchten Log Pool-Ausschnitts mit AFIMs |
|
( 64) UPPER_ALOG_DATA | LOG_INTERVAL_END der ALOG-Datei |
|
( 78) LOWER_ALOG_DATA | LOG_INTERVAL_BEGIN der ALOG-Datei |
( 92) BACKOUT_LOG_DATA | gibt Grenzen des jüngsten lückenlosen BACKOUT-Bereichs an | |
|
( 92) UPPER_ALOG_SEQ_NR
| reserviert für zukünftige Erweiterungen |
|
( 96) LOWER_ALOG_SEQ_NR
| reserviert für zukünftige Erweiterungen |
|
(100) UPPER_ALOG_DATA
| reserviert für zukünftige Erweiterungen |
|
(114) LOWER_ALOG_DATA
| reserviert für zukünftige Erweiterungen |
(128) NEXT_SEQ_NR
| enthält Folgenummer der als nächstes einzuspielenden ALOG-Datei | |
|
(128) UPDATE_START_SEQ_NR
| kleinste ALOG-Nummer aller betrachteten Realms initialisiert durch SHOW-LOG; wird nach Einspielen von allen AFIMs einer ALOG-Datei um 1 erhöht; beim Erreichen von DEADLINE auf 0 gesetzt |
|
(132) RESET_START_SEQ_NR
| |
(136) CHAR_TYPE_LOG_DATA | Angabe in abdruckbarer Darstellung | |
(136) DBNAME
| Name der bearbeiteten Datenbank | |
(153) COPYNAME
| CHAR (8); COPYNAME der bearbeiteten Schattendatenbank | |
(161) ALOG_SEQ_CHAR
| CHAR (9); ALOG_SEQ_NR aus DBDIR | |
(170) UPDATE_START_SEQ_CHAR
| CHAR (9); UPDATE_START_SEQ_NR | |
(179) END
|
Ergebnisse der Initialisierung
Zur Initialisierung werden die Informationen aus der ALOG BOTTOM PAGE der zugewiesenen ALOG-Datei und aus dem DBDIR genutzt.
Die Differenz zwischen niedrigster und höchster Folgenummer der ALOG-Dateien-Sequenz kann auch geringer als 63 sein. Diese Situation ist möglich bei geringer Anzahl von ALOG-Dateien sowie nach einem inkonsistenten Wechsel der ALOG-Datei (alte ALOG-Datei nicht mehr im Zugriff).
Wird von einer Originaldatenbank ausgegangen, erhalten Sie durch die Initialisierung der Jobvariablen folgende Informationen:
Konsistenz des Original-DBDIR
Zeitpunkt der letzten Änderung des DBDIR
höchste Folgenummer der ALOG-Datei-Sequenz
das jüngste Intervall mit AFIM-Logging wird ausgegeben (Grenzwerte als Folgenummern und Zeitstempel)
Der Zeitpunkt einer maximalen DEADLINE ist hinterlegt worden (LOG END des jüngsten AFIM-Loggingintervalls).
Mit dem gelieferten Wert können Sie für die Funktion UPDATE einen geeigneten Sicherungsbestand einspielen.
Da nur die letzten 63 Logdateien untersucht wurden, ist nicht immer erkennbar, ob der Zeitraum des lückenlosen Loggings weiter in die Vergangenheit zurückreicht.
Muss die ALOG-Datei-Sequenz weiter zurück untersucht werden, so ist eine erneute Initialisierung der Jobvariablen erforderlich. Dabei ist es sinnvoll, mit der niedrigsten alog-seq-nr der untersuchten Sequenz zu starten, um eine Überlappung der Ausschnitte zu erhalten.
Wurde eine Schattendatenbank zugewiesen, so können Sie aus dem DBDIR keine Informationen gewinnen, mit welcher Folgenummer der ALOG-Dateien die Datenbank zuletzt prozessiert worden ist. Die höchste Folgenummer der belegten ALOG-Dateien können Sie nur ermitteln, wenn Sie die Originaldatenbank zuweisen. Bei Schattendatenbanken kann nur die Folgenummer zum Zeitpunkt der Sicherung des DBDIR ausgegeben werden.
Die Jobvariablenfelder werden bei einer Schattendatenbank genauso versorgt wie bei der Zuweisung eines Originals.
Aktualisierungen durch UPDATE-DATABASE
Durch die Anweisung UPDATE-DATABASE werden alle Werte der Jobvariablen, die den DBDIR bzw. das BACKOUT-Logging betreffen, gelöscht.
Wurde eine ALOG-Datei eingespielt, wird die Folgenummer der ALOG-Datei eingetragen, die als nächste eingespielt werden soll. Ist DEADLINE erreicht, wird binär Null eingetragen.
Anweisungsfolge
|