In der folgenden Kommandoübersicht wird als Standardfall angenommen, dass der DBH einer UDS/SQL-Version genutzt wird, die mit IMON installiert wurde und im SCI (Software Configuration Inventory) zentral verwaltet wird. Unter der Überschrift „Privatinstallation“ sind jeweils Kommandos aufgeführt, die nicht im Standardfall, sondern nur bei Nutzung einer privat installierten, nicht im SCI verwalteten UDS/SQL-Version relevant sind.
Nr. | Kommandos | independent | linked-in |
1. |
| X | X |
2. |
| X | X |
3. |
| X | X |
4. |
| X | X |
5. |
| X | |
6. |
| X | X |
| X | X | |
7. |
| X | X |
8. |
| X | X |
9. |
| X | |
| X | ||
10. |
| X | X |
11. |
| X | X |
| X | ||
Privatinstallation (zusätzliche Kommandos) | |||
| X | X | |
| X | ||
| X | ||
12. |
| X | |
Privatinstallation (alternatives Kommando) | |||
| X | ||
13. |
| X |
Tabelle 7: DBH-Startkommandos
Mit diesem SET-FILE-LINK-Kommando vergeben Sie den Namen der DB-Konfiguration der Session.
konfigurationsname
frei wählbarer Name der Datenbankkonfiguration; kann im Mono-DB-Betrieb mit dbname identisch sein. Es gelten folgende Regeln:
konfigurationsname darf max. 41 Zeichen lang sein;
alle konfigurationsnamen einer BS2000-Session müssen in den ersten sieben Zeichen eindeutig sein;
konfigurationsname darf in den ersten acht Stellen kein Sonderzeichen enthalten.
konfname
Die ersten acht Zeichen von konfigurationsname. Nullen am Ende von konfname sind nicht signifikante Zeichen, d.h. konfname ABC und konfname ABC0 werden nicht unterschieden.
Aus den ersten acht Zeichen des konfigurationsnamens bildet der DBH die Namen der folgenden Dateien:
- Session-Log-File (SLF): konfname.SLF
- Temporärer Realm: konfname.TEMPO.nnn
-
RLOG-Dateien: konfname.RLOG.rlogzeitstempel{1 | 2}[.SAVE]-
Session-Jobvariable UDSSQL.DBH.konfnameDer DBH trägt diese Dateien in der Kennung ein, unter der Sie den DBH starten, falls Sie die Dateien nicht selbst angelegt haben.
Ebenso werden beim independent DBH die ersten acht byte von konfigurationsname zur Definition der Kommunikationspfade (Event-Namen des P1-Eventing und Namen des Common Memory Pools) benutzt; Konfigurationsnamen, die kürzer als acht byte sind, werden mit C’0’ aufgefüllt. Über sie nehmen die Datenbank-Anwenderprogramme und die DCAM-Administration Verbindung zur DB-Konfiguration auf.
UDS/SQL erweitert die Dateien, falls sie nicht sowieso größer sind:
SLF
SPACE = (24,0)
DBSTAT
SPACE = (24,48)
RLOG
SPACE = (192,192)
TEMPO
SPACE = (192,576)
Hinweis für den independent DBH
Wenn Realms oder Dateien der DB-Konfiguration auf privater Platte liegen, so müssen die entsprechenden Platten mehreren Tasks zugänglich gemacht werden (siehe die Kommando-Handbücher zu „BS2000 OSD/BC“) vor dem DBH-Start mit dem Operator-Kommando:
/SET-DISK-PARAMETER,...
Standardmäßig legt der DBH die temporären Benutzerrealms auf gemeinschaftlicher Platte an. Wenn die Temporären Realms auf privater Platte liegen sollen, so müssen Sie pro Transaktion (siehe „PP TRANSACTION“ im Kapitel "Maximale Anzahl Transaktionen festlegen (TRANSACTION)") einen Temporären Realm in der Konfigurationskennung einrichten mit dem Kommando:
/CREATE-FILE FILE-NAME=konfname.TEMPO.nnn
,SUPPORT=*PRIVATE-DISK(VOLUME=priv-vsn,DEVICE-TYPE=gerät[,SPACE=...])konfname
die ersten acht Zeichen von konfigurationsname
nnn
Nummer der Transaktion dreistellig mit führenden Nullen
001..m
m:
Wert des DBH-Ladeparameters PP TRANSACTION (siehe „PP TRANSACTION“ im Kapitel "Maximale Anzahl Transaktionen festlegen (TRANSACTION)")Standardmäßig legt der DBH die Session-Log-File (SLF) auf gemeinschaftlicher Platte an. Wenn die Session-Log-File auf privater Platte liegen soll, so müssen Sie diese mit folgendem Kommando einrichten:
/CREATE-FILE FILE-NAME=konfname.SLF
,SUPPORT=*PRIVATE-DISK(VOLUME=priv-vsn,DEVICE-TYPE=gerät[,SPACE=...])Die SLF wird im 4-Kbyte-Seitenformat eingerichtet. Wenn eine SLF < UDS/SQL V2.0 existiert (d.h. mit 2-Kbyte-Seitenformat), und Sie wieder den gleichen Konfigurationsnamen verwenden wollen, müssen Sie diese SLF löschen.
VORSICHT!
Die SLF darf nicht in flüchtigen Medien schreib- oder schreiblesegepuffert genutzt werden (siehe Abschnitt „DAB-Caching für UDS/SQL nutzen“).Die DB-Status-Dateien müssen, falls noch nicht vorhanden, eingerichtet werden. Die DB-Status-Dateien werden in 4-Kbyte-Seitenformat eingerichtet. Sie können ihre Lage auf getrennten Datenträgern bestimmen.
Wenn die DB-Status-Dateien auf privater Platte liegen sollen, so müssen Sie diese mit folgendem Kommando einrichten:
/CREATE-FILE FILE-NAME=konfname.DBSTAT[.SAVE]
,SUPPORT=*PRIVATE-DISK(VOLUME=priv-vsn,DEVICE-TYPE=gerät[,SPACE=...])
,SUPPRESS-ERRORS=*FILE-EXISTINGVORSICHT!
Die DB-Status-Dateien dürfen nicht in flüchtigen Medien schreib- oder schreiblesegepuffert genutzt werden (siehe Abschnitt „DAB-Caching für UDS/SQL nutzen“).Wenn in das Anwenderprogramm das Verbindungsmodul UDSLNKA eingebunden wurde, muss der Auftragsschalter 28 auf OFF gesetzt werden, damit der linked-in DBH gestartet wird (wenn der Auftragsschalter 28 auf ON gesetzt ist, wird die independent-Variante des Anwenderprogramms gestartet; siehe auch Handbuch „Anwendungen programmieren“, COBOL-Programm starten).
Mit diesen Kommandos wird die Eingabequelle festgelegt, aus der der DBH die Ladeparameter einlesen soll. Eingabequellen können sein:
eine SAM- oder ISAM-Datei
ein PLAM-Bibliothekselement
eine Prozedurdatei (DBH-Startprozedur)
Im Folgenden sind die Kommandos aufgeführt, die Sie abhängig von der zuzuweisenden Eingabequelle jeweils benötigen:
Zuweisen einer SAM- oder ISAM-Datei (independent und linked-in DBH)
/ADD-FILE-LINK LINK-NAME=PPFILE,FILE-NAME=dateiname
Zuweisen eines PLAM-Bibliothekselements (independent und linked-in DBH)
/ASSIGN-SYSDTA TO=*LIBRARY-ELEMENT(LIB=lib,ELEM=elem,TYPE=S)
/ADD-FILE-LINK LINK-NAME=PPFILE,FILE-NAME=SYSDTAZuweisen einer Prozedurdatei (independent DBH)
Wenn die Ladeparameter in der DBH-Startprozedur stehen, muss vor dem DBH-Startkommando folgendes Kommando angegeben werden:
/ADD-FILE-LINK LINK-NAME=PPFILE,FILE-NAME=SYSCMD
Zuweisen einer Prozedurdatei (linked-in DBH)
Wenn die Ladeparameter in der Startprozedur für das linked-in-Anwenderprogramm stehen, muss vor dem Start des Anwenderprogramms folgendes Kommando angegeben werden:
/ASSIGN-SYSDTA TO=*SYSCMD
Siehe „Hinweis für den linked-in DBH“.
Hinweis für den linked-in DBH
Es wird empfohlen, die Ladeparameter aus einer Datei (PPFILE) einzugeben, wenn SYSDTA für Anwenderdaten benutzt wird. Wenn Sie die Ladeparameter auf SYSDTA stehen haben und das Anwenderprogramm ebenfalls von SYSDTA liest, so gilt Folgendes:
Bei Verwendung der COBOL-DML richtet sich der Zeitpunkt der Eingabe der Ladeparameter danach, wann das erste COBOL-Modul mit Subschema-Deklarationen durchlaufen wurde:
Die Ladeparameter müssen vor den Daten für das Programm stehen, wenn die Daten für das Programm nach dem ersten Ansprung eines COBOL-Moduls mit Subschema-Deklarationen eingelesen werden.
Die Ladeparameter müssen nach den Daten für das Programm stehen, wenn die Daten für das Programm vor dem ersten Ansprung eines COBOL-Moduls mit Subschema-Deklarationen eingelesen werden.
Bei Verwendung von ausschließlich CALL-DML richtet sich der Zeitpunkt derEingabe von Ladeparametern und Daten danach, ob das Anwenderprogramm vor oder nach dem ersten READYC-Aufruf von SYSDTA liest.
Mit diesem Kommando können Sie den variablen Teil des Namens der Session-Jobvariable festlegen. Siehe Abschnitt „Session-Jobvariable“.
Mit diesem Kommando weisen Sie eine Pubset-Deklarations-Jobvariable zu, in der eine UDS/SQL-Pubset-Deklaration festgelegt ist. Mit dieser können Sie die Eindeutigkeitsanforderung für Dateinamen auf eine ausgewählte Menge von Katalogkennungen beschränken. Es wird empfohlen, generell eine Pubset-Deklarations-Jobvariable in der Startprozedur zuzuweisen, da dies später aus einer anderen Task nicht mehr möglich ist. Wenn Sie keine Beschränkung der zu berücksichtigenden Pubsets wünschen, können Sie die Default-Einstellung "*" in die Pubset-Deklarations-Jobvariable eintragen. Siehe Abschnitt „Pubset-Deklarations-Jobvariable“.
Eine beim DBH-Start vorliegende fehlerhafte Jobvariablen-Zuweisung oder die Zuweisung einer fehlerhaften UDS/SQL-Pubset-Deklaration führt zum Abbruch der Session.
Diese Kommandos sind nur beim Start des linked-in DBH relevant.
Im Falle von CALL-DML-Anwenderprogrammen muss die Bibliothek bekannt sein, aus der zum Ablaufzeitpunkt die SSITAB-Module nachgeladen werden sollen. Als Erstes wird die Bibliothek durchsucht, die mit dem Linknamen $UDSSSI zugewiesen wurde. Wenn die SSITAB-Module nicht nur in einer Bibliothek gehalten werden, z.B. pro Datenbank in einer eigenen, können die weiteren Bibliotheken mit den Linknamen BLS-LIB00 bis BLSLIB99 zugewiesen werden. Die Zuweisung mit dem Linknamen $UDSS-SI und ggf. zusätzlich mit BLSLIBnn ist das empfohlene Standardverfahren. Für dieses Verfahren wird in den Fehlermeldungen des Produkts die Abkürzung „$UL“ verwendet.Wenn der Linkname $UDSSSI nicht verwendet wird oder der Nachladevorgang nicht erfolgreich war, wird aus Kompatibilitätsgründen eine in der Ablaufkennung vorhandene Bibliothek UDS.MODLIB bzw. eine mit dem SET-TASKLIB-Kommando zugewiesene Bibliothek durchsucht. Für dieses Verfahren wird in den Fehlermeldungen des Produkts die Abkürzung „TSK“ verwendet.
Bei KDBS-Anwendungen muss zusätzlich mit dem Linknamen $UDSPLEX die Bibliothek zugewiesen werden, die die PLITAB-Module enthält. Das Nachladeverfahren ist analog zur Behandlung der SSITAB-Module.
Wenn eine Umsetztabelle (UDSTRTAB) für eine benutzerspezifische Sortierung von Character-Feldern genutzt wird, muss die Bibliothek bekannt sein, aus der das UD-STRTAB-Modul nachgeladen werden soll. Als Erstes wird eine Bibliothek in der Konfigurationskennung durchsucht, die mit dem Linknamen $UDSKONF zugewiesen wurde. Für weitere Einzelheiten siehe Handbuch „Anwendungen programmieren“, Abschnitt „Umsetztabelle für eine anwendungsspezifische Sortierung“.
Es wird empfohlen, generell mit dem Kommando SELECT-PRODUCT-VERSION anzugeben, welche UDS/SQL-Version genutzt werden soll, da mit IMON im Software Configuration Inventory (SCI) mehrere UDS/SQL-Versionen parallel installiert und mehrere Versionen des UDS/SQL-Subsystems vorgeladen sein können. Dabei sollte die Versionsnummer immer inklusive Freigabe- und Korrekturstand angegeben werden (z.B. 02.9A00). Weiterführende Informationen zum Gebrauch des SELECT-PRODUCT-VERSION-Kommandos finden Sie im Abschnitt „Mehrere UDS/SQL-Versionen parallel nutzen“ff. Der Einsatz des dort näher beschriebenen Verfahrens ist auch dann empfehlenswert, wenn über längere Zeiträume nur eine UDS/SQL-Version auf der Anlage genutzt wird.
Beim Aufruf des independent DBH wird mit SELECT-PRODUCT-VERSION die Version des Startmoduls UDSSQL(Mastertask) ausgewählt, beim Aufruf des linked-in-Anwenderprogramms die Version des nachzuladenden, versionsabhängigen Verbindungsmoduls LCCONCT. Das eigentliche UDS/SQL-Coding wird in der passenden Version zum Startmodul bzw. linked-in-Verbindungsmodul entweder als vorgeladenes Subsystem genutzt oder aus der entsprechenden SYSLNK-Bibliothek des Produkts UDS/SQL nachgeladen.
Für dieses Verfahren wird in den Fehlermeldungen des Produkts die Abkürzung „SCI“ verwendet.Für weitere Einzelheiten siehe neben dem Abschnitt „Mehrere UDS/SQL-Versionen parallel nutzen“ auch bezüglich der linked-in-Anwenderprogramme den Abschnitt „UDS/SQL-TIAM-Anwenderprogramm binden, laden und starten“ im Handbuch „Anwendungen programmieren“.
UDS-D-Einsatz:Bei Einsatz von UDS-D (nur mit dem independent DBH möglich) sollte mit einem zusätzlichen SELECT-PRODUCT-VERSION-Kommando die zur UDS/SQL-Version korrespondierende UDS-D-Version angegeben werden, um sicher zu stellen, daß immer die korrekten Produktteile von UDS-D nachgeladen werden. Auch hier wird empfohlen, SELECT-PRODUCT-VERSION auch dann zu verwenden, wenn über längere Zeiträume nur eine UDS-D-Version auf der Anlage genutzt wird.
Privatinstallation
Wenn eine Produktversion eingesetzt werden soll, die nicht rechnerweit im SCI verwaltet wird, gelten folgende Besonderheiten:
Die Bibliotheken, aus denen die Module des Produkts UDS/SQL und ggf. der Produkte UDS-D und UDSKDBS in der gewünschten Version nachgeladen werden sollen, werden explizit mit dem ADD-FILE-LINK-Kommando zugewiesen. Folgende Linknamen stehen für die Zuweisungen zur Verfügung:
$UDSLIB
Module des Produkts UDS/SQL (independent und linked-in DBH)
$UDSDLIB
Module des Produkts UDS-D (nur bei independent DBH)
$UDSKLIB
Module des Produkts KDBS (nur bei linked-in DBH)
Für dieses Verfahren wird in den Fehlermeldungen des Produkts die Abkürzung „$UL“ verwendet.
Aus Kompatibilitätsgründen wird auch weiterhin die Nutzung einer UDS.MODLIB mit ggf. TASKLIB-Zuweisung zum Nachladen der Module unterstützt, wenn die Produkte weder über SCI noch über die Linknamen $UDSLIB, $UDSDLIB und $UDSKLIB bereitgestellt sind. Für dieses Verfahren wird in den Fehlermeldungen des Produkts die Abkürzung „TSK“ verwendet.
Die SELECT-PRODUCT-VERSION Kommandos für die Produkte UDS/SQL und ggf. UDS-D werden aus folgenden Gründen evtl. auch bei einer Privatinstallation benötigt:Parallel zu einer privat installierten Produktversion können auch UDS/SQL- und UDS-D-Subsystemen vorgeladen sein. Mit dem SELECT-PRODUCT-VERSION-Kommando wird sichergestellt, dass die aus der Privatinstallation nachgeladenen Module eine Verbindung zur richtigen Subsystemversion herstellen.
Der independent DBH wird mit dem Kommando START-UDS-DBH gestartet.
Es wird empfohlen, im START-Kommando den Operanden RESIDENT-PAGES anzugeben, da nur in diesem Fall UDS/SQL die performantere Zugriffsmethode FASTPAM (statt UPAM) für Dateizugriffe verwendet (für weitere Einzelheiten siehe Abschnitt „FASTPAM für UDS/SQL nutzen“).
Alternativ zum START-UDS-DBH-Kommando kann aus Kompatibilitätsgründen auch das START-EXECUTABLE-PROGRAM-Kommando (bzw. das START-PROGRAM-Kommando) zum Aufruf des independent DBH verwendet werden (Beispiel siehe unter „Privatinstallation“).Die Mastertask liest die Ladeparameter des DBH ein. Der DBH initialisiert die Common Memory Pools und startet dann eine oder mehrere Servertasks als ENTER-Jobs. Die entsprechenden ENTER-Dateien trägt die Mastertask mit folgenden Dateinamen in der Kennung ein, unter der Sie den DBH starten (Konfigurationskennung):
UDS.ENTER.tsn.ST0nn
ENTER-Dateien für die Servertask(s)
tsn
Prozessfolgenummer der Mastertasknn
Nummer der ServertaskWenn beim Einsatz von UDS-D PP DISTRIBUTION=START oder STANDBY angegeben wurde, wird eine weitere ENTER-Datei angelegt und bei PP DISTRIBUTION= START gestartet:
UDS.ENTER.tsn.CT000Die Mastertask startet die ENTER-Jobs für die Servertasks (und bei UDS-D-Betrieb für die UDS-D-Task) mit folgenden Angaben:
JOB-CLASS = Jobklasse der Mastertask,
falls die Mastertask als ENTER-Job läuft. Wenn die Mastertask als Dialogauftrag läuft, startet sie die ENTER-Jobs in der Standard-Jobklasse der Kennung(JOB-CLASS=*STD).RUN-PRIO = Priorität der Mastertask
START=IMMEDIATELY
Die START-Angabe wird ignoriert, falls sie weder in dem ADD-USER-Eintrag noch in der Jobklasse zugelassen ist.
TIME=NTL oder
TIME=32000, falls NTL weder in der aktuellen Benutzerkennung noch in der Jobklasse zugelassen ist.
Wenn der Start der ENTER-Jobs nicht in der Jobklasse der Mastertask gelingt, so versucht die Mastertask, die ENTER-Jobs in der Standard-Jobklasse der Kennung aber mit der gleichen RUN-PRIO- und TIME-Angabe zu starten.
Wenn auch dies erfolglos ist, wird in der Standard-Jobklasse ohne RUN-PRIO-Angabe gestartet.Jobklassen und Benutzerkennungen richtet der BS2000-Systemverwalter für Sie ein. Die Information über die für Ihre Benutzerkennung oder Jobklassen eingetragenen Werte erhalten Sie mit den BS2000-Kommandos SHOW-USER-ATTRIBUTES bzw. SHOW-JOB-CLASS (siehe die Kommando-Handbücher zu „BS2000 OSD/BC“).
Nach dem normalen DBH-Ende löscht die Mastertask diese ENTER-Dateien automatisch.
Privatinstallation
Bei Nutzung einer Produktversion, die nicht rechnerweit im SCI verwaltet wird, kann in der Regel nicht das oben beschriebene START-Kommando verwendet werden, sondern das START-EXECUTABLE-PROGRAM-Kommando.
Beispiel
/START-EXECUTABLE-PROGRAM FROM-FILE=(
LIB=$kennung.SYSLNK.UDS-SQL.version,ELEM=UDSSQL)Den linked-in DBH laden und starten Sie durch den Aufruf des Anwenderprogramms mit dem START-PROGRAM-Kommando (bzw. mit dem START-EXECUTABLE-PROGRAM-Kommando).
Der voreingestellte Wert NAME-COLLISION=*STD sollte nicht verändert werden, da es sonst bei Anwendungen, die mit dem BINDER gebunden wurden, zu Namenskonflikten bei nachzuladenden Entries kommen kann.
Verwendet das Anwenderprogramm die COBOL-DML, so ruft nach dem Start des Programms das Verbindungsmodul die Module des linked-in DBH auf. Der linked-in DBH liest daraufhin die Ladeparameter des DBH ein und gibt anschließend die Steuerung an das Anwenderprogramm zurück.
Beim Verwenden von CALL-DML veranlasst der erste READYC-Aufruf das Verbindungsmodul dazu, die Module des linked-in DBH und des CALL-DML-Umsetzers nachzuladen. Der linked-in DBH liest daraufhin die Ladeparameter des DBH ein und bearbeitet anschließend den READYC-Aufruf.