Natural for Db2 auf z/OS installieren

Dieses Dokument beschreibt die Schritte zur Installation von Natural for Db2 (Produktcode NDB) auf z/OS sowie einige zugehörige Themen:

Verwandte Themen:

Informationen zum Betrieb von Natural in einer Db2-Umgebung finden Sie unter Natural for Db2 in der Datenbankmanagementsystem-Schnittstellen-Dokumentation.

Notation vrs oder vr:

In diesem Dokument steht die Notation vrs oder vr für die jeweilige Produktversion (siehe auch Version im Glossar).


Voraussetzungen

Die folgende Software muss installiert sein, bevor Sie Natural for Db2 installieren können:

  • Natural Version 9.2.3 3 (oder höher); Sie können Natural und Natural for Db2 nicht gleichzeitig installieren.

  • Software AG Editor

Siehe auch Allgemeine Voraussetzungen und Systemunterstützung und Übersicht über den Installationsvorgang.

Installationsdatenträger

Der Installationsdatenträger enthält die folgenden Datasets, die für die Produktinstallation erforderlich sind:

Dataset-Name Inhalt
NDBvrs.LOAD Lademodule
NDBvrs.SRCE Quellcodemodule und Makros
NDBvrs.JOBS Beispiel-Installationsjobs
NDBvrs.INPL Natural-Objekte einschließlich Fehlermeldungen

Kopieren Sie die Datasets in Ihre Umgebung, wie unter Datasets auf eine z/OS-Platte kopieren im Kapitel Natural auf z/OS installieren beschrieben.

Installationsvorgang

Bevor Sie mit der Installation beginnen, sollten Sie unbedingt die Abschnitte im Kapitel Installationsverfahren und wichtige Natural-Funktionen unter z/OS lesen.

Der Installationsvorgang umfasst die folgenden Schritte:

Allgemeine Installationsschritte

In diesem Abschnitt werden die Installationsschritte beschrieben, die für alle Natural-Umgebungen gelten, in denen Natural for Db2 installiert werden kann. Schritte, die für einen bestimmten TP-Monitor zusätzlich erforderlich sind, werden in separaten Abschnitten beschrieben.

Überlegungen im Falle eines Db2-Upgrade

Wenn Sie ein Upgrade auf eine neuere Db2-Version durchführen, müssen Sie Ihre aktuelle Natural for Db2-Installation nicht upgraden.

Wenn Sie ein Upgrade auf eine neuere Db2-Version durchführen und gleichzeitig auf eine neuere Natural for Db2-Version upgraden wollen, müssen Sie Folgendes beachten:

  • Legen Sie das Modul NDBIOMO nicht mit dem Db2-Versionsparameter der neuen Db2-Version neu an, es sei denn, der New-Function-Modus ist in der neuen Db2-Version aktiviert. In diesem Fall müssen Sie die Schritte 2 bis 5 überspringen.

  • Wenn der New-Function-Modus in der neuen Db2-Version aktiviert ist, müssen Sie nur dann ein neues NDBIOMO-Modul erstellen, wenn Sie die neuen Db2-Anweisungen verwenden möchten, die dem NDBIOMO-Modul für die neue Db2-Version hinzugefügt wurden. Ansonsten können Sie die Schritte 2 bis 5 auch überspringen.

Schritt 1: Lizenzdatei für Natural for Db2 installieren

Zusätzlich zur Natural-Produktlizenzdatei ist eine Lizenzdatei erforderlich, die für jede Umgebung installiert werden muss, in der Natural for Db2 (Produktcode: NDB) ausgeführt wird. Für die Lizenzdatei NDBvrs.LICS siehe Installationsschritt Lizenzdatei vorbereiten, konvertieren, assemblieren und verlinken im Kapitel Natural auf z/OS installieren.

Natural for Db2 wird nur aktiviert, wenn Sie eine gültige Natural for Db2-Lizenzdatei installieren. Der Versuch, Natural for Db2 ohne eine gültige Lizenzdatei zu aktivieren, führt zu Warnungen oder Fehlern beim Start der Sitzung.

Schritt 2: DBRM-Bibliothek für die Verwendung mit Natural for Db2 zuordnen

  • Ordnen Sie einen PDS (Partioned Dataset) als DBRM (Database Request Module)-Bibliothek zu. Die Größe dieses Dataset und die Anzahl der Verzeichniseinträge hängen vom jeweiligen Standort ab (5 Spuren und 20 Verzeichnisblöcke dürften für die meisten Umgebungen ausreichend sein). Der PDS muss Fixed-Block-Record-Format und eine Record-Länge von 80 haben.

    Für diese DBRM-Bibliothek kann ein beliebiger Standard-Dataset-Name verwendet werden. Bei diesem Installationsverfahren wird jedoch davon ausgegangen, dass der Name SAGLIB.DB2DBRM verwendet wird.

Schritt 3: Ein-/Ausgabemodul NDBIOMO für Natural for Db2 generieren

(Job I055, Step 1600)

  1. Führen Sie den mit diesem Schritt gelieferten Standard-Natural-Batch-Job aus, um den Assembly-Quellcode für das NDBIOMO-Modul aus dem NDBIOTM-Member zu generieren. Dieser Batch-Job ruft das Natural-Programm NDBGENI auf, das mit dem Natural-Dienstprogramm INPL bei der Installation des Basisprodukts Natural geladen wird.

    Das Modul NDBIOMO ermöglicht den dynamischen Zugriff auf Db2 und enthält alle erforderlichen EXEC-SQL-Statements. Darüber hinaus enthält es einige spezielle SQL-Statements, die im dynamischen Modus nicht ausgeführt werden können. Siehe auch E/A-Modul NDBIOMO für die dynamische Ausführung von SQL-Statements in der Datenbankmanagementsystem-Schnittstellen-Dokumentation.

  2. Ändern Sie die folgenden beiden in dem Modul NDBGENI enthaltenen positionsgebundenen Parameter, um sie an Ihre Anforderungen anzupassen.

    • Der erste Parameter schränkt die Verwendung von SQL-Statements auf diejenigen ein, die von einer bestimmten Db2-Version unterstützt werden. Setzen Sie diesen Parameter auf einen der folgenden Werte:

      DB2V11 für Db2 Version 11 im New Function Mode, oder eine höhere Db2 Version.
      DB2V13 für Db2 Version 13 im New Function Mode, oder eine höhere Db2 Version.

    • Der zweite Parameter gibt die maximale Anzahl der parallelen dynamisch vorbereiteten Db2-Statements an.

  3. Überprüfen Sie den von diesem Job erstellten Ausgabebericht auf erfolgreichen Abschluss des Jobs. Außerdem zeigt ein Bedingungscode von 0 einen normalen Jobabschluss an.

Schritt 4: NDBIOMO erstellen

(Job I055, Step 1610)

  • Natural for Db2 I/O-Modul NDBIOMO vorkompilieren, assemblieren und verlinken.

    Der Link-Edit-Schritt erhält einen Bedingungscode von 4 wegen nicht aufgelöster Referenzen für DSNHLI. Dies ist normal und kann ignoriert werden.

Schritt 5: DBRM NDBIOMO in ein Paket binden

(Job I057, Step 1620)

  • Binden Sie das DBRM NDBIOMO in ein Paket.

Schritt 6: Db2-Plan zur Verwendung mit Natural for Db2 erstellen

(Job I057, Step 1631 - 1634)

  • Erstellen Sie die DB2-Pläne, die von Natural for DB2 im Batch-Modus, in TSO und unter CICS verwendet werden sollen.

Schritt 7: NATGWDB2 verlinken

(Job I055, Step 1680)

  • Verlinken Sie das Natural for Db2-Lademodul NATGWDB2.

Schritt 8: Natural-Parametermodul erstellen

(Job I060, Steps 0010, 0015)

Erstellen Sie das Natural-Parameter-Modul für den Batch-Modus. Die in diesem Abschnitt erwähnten Makros und Parameter sind in der Parameter-Referenz-Dokumentation beschrieben.

  1. Ändern Sie die Einstellungen der mit dem Natural-Parametermodul gelieferten Parameter nach Bedarf:

    • Setzen Sie die Parameter, die mit dem Makro NTOSP geliefert werden, um die z/OS-Batch-Schnittstelle zu konfigurieren. Eine Beschreibung dieser Parameter finden Sie beim entsprechenden dynamischen Profilparameter OSP.

    • Setzen Sie die für Natural for Db2 zutreffenden Parameter, die mit dem Makro NTDB2 geliefert werden. Eine Beschreibung dieser Parameter finden Sie bei dem entsprechenden dynamischen Profilparameter DB2.

    Siehe auch Natural-Parameter-Änderungen für Natural for Db2.

  2. Assemblieren und verlinken Sie das Natural-Parametermodul.

Schritt 9: Nukleus verlinken

(Jobs I060, I080)

  1. Verlinken Sie den umgebungsabhängigen Nukleus:

    Fügen Sie die folgenden INCLUDE-Anweisungen und die entsprechenden DD-Anweisungen zu den Verlinkungsanweisungen für den Linkage-Editor hinzu:

     INCLUDE SMALIB(nat-parm-module)
    Natural-Parametermodul, wobei nat-parm-module der beim Installationsschritt Natural-Parametermodul erstellen verwendete Modulname ist.
     INCLUDE DSNLIB(DSNTIAR)
    SQL-Fehlermeldungsmodul.
     INCLUDE SMALIB(NDBIOMO)
    Natural for Db2 E/A-Modul, erstellt beim Installationsschritt NDBIOMO erstellen.
     INCLUDE xxxxxxxx(yyyyyyyy)
    Umgebungsabhängige Db2-Schnittstelle (siehe unten).

    Abhängig von Ihrer Umgebung müssen Sie die entsprechende Db2-Schnittstelle yyyyyyyy aus der Bibliothek xxxxxxxx in Ihrer INCLUDE-Anweisung angeben, wie in der folgenden Tabelle dargestellt:

    Schnittstelle Bibliothek Umgebung
    DSNALI DSNLIB Unter TSO und im Batch-Modus, ohne unter der Kontrolle des DSN-Kommandoprozessors zu laufen, d.h. mit Call Attachment Facility (CAF)
    DSNRLI DSNLIB WLM (Workload Manager) Stored Procedure Address Space und Natural Development Server (empfohlen)

    Dies kann auch in TSO- und Batch-Umgebungen verwendet werden.

    DSNELI DSNLIB Unter TSO und im Batch-Modus, wenn unter der Kontrolle des DSN-Kommandoprozessors
    DSNCLI DFHLIB Unter CICS
    DSNULI DSNLIB Unter allen Umgebungen außer Com-plete
    DFSLI000 IMSLIB Unter IMS TM (MPP und BMP) und im Batch-Modus unter Verwendung der Db2-Batch-Unterstützung (DSNMTV01)
    NDBCOM NDBLIB Unter Com-plete
  2. Verlinken Sie den umgebungsunabhängigen Nukleus:

    Fügen Sie die folgende INCLUDE-Anweisung und die entsprechende DD-Anweisung zu den Link-Anweisungen für das Natural for Db2-Lademodul hinzu:

     INCLUDE SMALIB(NATGWDB2)

Alternativen

Anstatt sowohl den umgebungsabhängigen als auch den umgebungsunabhängigen Nukleus wie oben beschrieben zu verlinken, können Sie eine der folgenden Methoden verwenden:

  1. Erstellen Sie einen einzigen umgebungsabhängigen Nukleus:

    Verlinken Sie alle umgebungsabhängigen Module mit allen umgebungsunabhängigen Modulen und schaffen Sie so einen einzigen, umgebungsabhängigen Nukleus.

  2. Trennen Sie das Modul NATGWDB2 (das nicht mit dem umgebungsunabhängigen Nukleus verlinkt ist):

    Benutzen Sie das Modul NATGWDB2 als getrenntes Modul, indem Sie die Funktion Natural Resolve STATIC Addresses (RCA) verwenden.

    Sie können den Namen des beim Installationsschritt NATGWDB2 verlinken verlinkten Moduls NATGWDB2 ändern. Wenn Sie jedoch einen anderen Namen als NATGWDB2 verwenden, muss dieser Name als Alias-Name im Makro NTALIAS (siehe Parameter-Referenz-Dokumentation) im Natural-Parametermodul angegeben werden.

  3. Erstellen Sie ein alternatives Natural-Parametermodul, das alle umgebungsabhängigen und umgebungsunabhängigen Natural for Db2- und Db2 for z/OS-Module enthält:

    Verlinken Sie das alternative Natural-Parametermodul zusammen mit allen Natural for Db2-Modulen (NATGWDB2, NDBIOMO) und allen Db2 for z/OS-Modulen (DSNTIAR und einem Db2-Schnittstellenmodul) als Natural for Db2-Nukleus NDBNUCxx mit ENTRY NATPARM.

    Sie können den Natural for Db2-Nukleus NDBNUCxx einsetzen, indem Sie PARM=NDBNUCxx als dynamischen Parameter angeben.

    Diese Methode bietet die Möglichkeit, ein neues Natural for Db2 Version xx in einer bestehenden Natural-Umgebung mit einer älteren Natural for Db2-Version auszuführen.

    Ein Natural for Db2-Nukleus mit einem verlinkten Db2-Schnittstellenmodul DSNULI, das von Db2 for z/OS Version 12 unterstützt wird, kann in allen Umgebungen außer Com-plete betrieben werden.

Das Folgende gilt für die Verlinkung eines separaten NATGWDB2-Moduls (Alternative 2 oben) oder eines separaten Natural-Parametermoduls (Alternative 3 oben):

TP Monitor Erforderniss
CICS Das resultierende Modul muss als PPT-Eintrag oder RDO definiert sein.

PPT-Eintrag:

DFHPPT TYPE=ENTRY,PROGRAM=module-name,PGMLANG=ASSEMBLER
Com-plete Das resultierende Modul muss definiert sein als RESIDENTPAGE oder es muss sich in der LPA/(E)LPA befinden.

Schritt 10: Neue Objekte laden

(Job I061, Step 1610)

Bevor Sie diesen Schritt ausführen, ändern Sie die CMWKF01 DD-Anweisung so, dass sie auf den Dataset NDBvrs.INPL zeigt.

  • Laden Sie die für Natural for Db2 spezifischen Natural-Objekte aus dem Dataset NDBvrs.INPL mit Hilfe des Natural-Dienstprogramms INPL in die Natural-Systemdatei. Die Natural-Objekte werden in die Natural-Systembibliotheken SYSDDM, SYSTEM und SYSDB2 in der Systemdatei FNAT geladen.

    Wichtig
    Stellen Sie sicher, dass Ihre neu erstellte SYSDB2-Bibliothek alle notwendigen Predict-Schnittstellenprogramme enthält, die bei der Installation von Predict in SYSDB2 geladen werden (siehe die entsprechende Predict-Dokumentation).

Schritt 11: Natural for Db2 Server Stub erstellen

(Job I070, Steps 1604, 1606, 1608, 1610)

  1. Erstellen Sie Server Stubs, um Natural Stored Procedures und Natural User-Defined Functions (UDFs) auszuführen. Natural for Db2 Server Stubs sind Schnittstellenmodule zwischen dem Db2-Datenbanksystem und dem Natural-Server. Der Server Stub muss installiert werden, um Natural Stored Procedures und benutzerdefinierte Natural-Funktionen ausführen zu können.

    Es gibt zwei Arten von Server Stubs:

    Natural for Db2 Server Stub (Modul NDBvrSRV, Steps 1604 und 1606)

    Der Server Stub wird verwendet, um Natural Stored Procedures und Natural User-Defined Functions auszuführen.

    Die erforderlichen IBM Language Environment (LE)-Laufzeitmodule müssen mit dem Natural for Db2 Server Stub-Modul verlinkt werden. Verwenden Sie die Option CALL des Linkage-Editors und weisen Sie die LE-Laufzeitbibliothek als SYSLIB zu.

    Natural for Db2 Startserver Stub (Modul NDBvrSTR, Steps 1608 und 1610)

    Der Start Server Stub wird verwendet, um die Natural-Serverumgebung(en) explizit zu starten.

    Die erforderlichen IBM LE-Laufzeitmodule müssen mit dem Natural for Db2 Start Server Stub-Modul verlinkt werden. Verwenden Sie die Option CALL des Linkage-Editors und weisen Sie die LE-Laufzeitbibliothek als SYSLIB zu. Binden Sie zusätzlich die Module NDBSTRP (ausgeliefert mit Natural for Db2) und NATCONFG (ausgeliefert mit Natural) aus NDBvrs.LOAD und NATvrs.LOAD ein.

  2. Natural for Db2 Server Stubs werden aus dem Makro NDBSTUB generiert. Sie können generell bei allen Parametern die Standardwerte verwenden. Ändern Sie nur die Werte der Parameter, deren Standardwerte nicht Ihren Anforderungen entsprechen. Die einzelnen Parameter sind im Abschnitt Natural for Db2 Server Stub beschrieben.

  3. Legen Sie die resultierenden Lademodule in eine Steplib-Bibliothek der JCL, die zur Ausführung des Adressraums der Db2 Stored Procedure verwendet wird.

  4. Für Db2 UDB muss jede Natural Stored Procedure oder Natural User-Defined Function (UDF) durch eine Db2 CREATE PROCEDURE- oder Db2 CREATE FUNCTION-Anweisung definiert werden, wobei der Name des generierten Natural for Db2 Server Stub-Moduls NDBvrSRV als EXTERNAL NAME angegeben wird.

Schritt 12: DBRM ROUTINEN in ein Paket binden

(Job I057, Step 1640)

  • Binden Sie die DBRM-ROUTINEN in ein Paket.

    Die DBRM-ROUTINEN ist in der SAGNDBROUTINENPACK-Collection enthalten und wird mit Natural for DB2 ausgeliefert. Natural for DB2 benötigt diese Collection, um auf den DB2-Katalog zuzugreifen und die Parameterbeschreibungen von Natural Stored Procedures und Natural User-Defined Functions abzurufen.

Spezielle Installationsschritte für CICS

Dieser Abschnitt beschreibt zusätzliche Schritte, die bei der Installation von Natural for Db2 in einer CICS-Umgebung erforderlich sind.

Stellen Sie sicher, dass Ihre Natural/CICS-Thread-Größe groß genug ist, um DB2SIZE zu enthalten. Wenn Sie die Natural Tools for Db2 verwenden (beschrieben in der Datenbankmanagement-Schnittstellen-Dokumentation), ist ein zusätzlicher Speicher von 8 KB erforderlich.

In diesem Abschnitt werden die folgenden Themen behandelt:

Planauswahl durch CICS RCT-Eingabe-Threads verwenden

(Job I005)

Wenn Sie eine feste Zuordnung Ihres Transaktionscodes zum Db2-Plan wünschen, müssen Sie in Ihrer CICS-RCT einen zusätzlichen Eintrag hinzufügen, oder einen DB2Entry mit RDO definieren, indem Sie einen der folgenden alternativen Schritte durchführen:

  • Ändern Sie Ihre RCT:

    DSNRCT TYPE=ENTRY,PLAN=plan-name,TXID=(transaction-id)

    wobei plan-name mit dem Namen übereinstimmen muss, der für die Erstellung des Db2-Plans für Natural for Db2 verwendet wurde: siehe Allgemeine Installationsschritte.

    Assemblieren und verlinken Sie die RCT.

  • Definieren Sie einen DB2Entry mit RDO:

    DEFINE DB2ENTRY
      OVERTYPE TO MODIFY                                        CICS RELEASE = nnnn
      CEDA  DEFine DB2Entry(          )
       DB2Entry       : DB2ENTR                                               
       Group          : NCI                                                  
       DEscription    :                        
      THREAD SELECTION ATTRIBUTES                                              
       TRansid        : transaction-id
      THREAD OPERATION ATTRIBUTES                                              
       ACcountrec     : None               None ! TXid ! TAsk ! Uow            
       AUTHId         :                                                        
       AUTHType       : Userid             Userid ! Opid ! Group ! Sign ! TErm 
                                           ! TX                                
       DRollback      : Yes                Yes ! No                            
       PLAN           : plan-name
       PLANExitname   :                                                        
       PRIority       : High              High ! Equal ! Low                  
       PROtectnum     : 0005               0-2000                              
       THREADLimit    : 0005               0-2000                              
       THREADWait     : Pool               Pool ! Yes ! No

plan-name muss mit dem Namen übereinstimmen, der für die Erstellung des Db2-Plans für Natural for Db2 verwendet wurde: siehe Allgemeine Installationsschritte.

Erläuterungen zu den Parametern finden Sie in der entsprechenden CICS-Literatur von IBM.

Planauswahl durch dynamischen Plan-Exit verwenden

Wenn Sie die Planauswahl mit Hilfe des dynamischen Plan-Exits ausführen wollen, führen Sie folgende Schritte aus:

Schritt 1: CICS Dynamic Plan Selection Exit Module NDBUEXT erstellen

(Job I070, Step 1630)

  1. Wenn Sie einen Standard-Plannamen angeben wollen, müssen Sie das Quellcodemodul NDBUEXT modifizieren.

    Die Beispiel-Exit-Routine NDBUEXT kann geändert werden, um einen Standard-Plannamen zu verwenden, wenn vor dem ersten SQL-Aufruf keiner angegeben wurde. Lesen Sie den Quellcode des Moduls NDBUEXT, um Einzelheiten zur Angabe eines Standard-Plannamens zu erfahren.

    Stellen Sie sicher, dass alle NDBUEXT-Module, die in Natural for Db2-Versionen vor Version 8.3 verwendet werden, durch das neue NDBUEXT-Modul ersetzt werden, das in diesem Schritt erstellt wird. Das neue NDBUEXT-Modul unterstützt weiterhin die in früheren Versionen von Natural for Db2 verwendeten CICS TS-Warteschlangennamen.

  2. NDBUEXT für CICS vorkompilieren, assemblieren und linken.

    Dieser Schritt erhält einen Bedingungscode 4 wegen einer nicht aufgelösten externen Referenz für DFHEAI0 und DFHEI1. Dies ist normal und kann ignoriert werden.

Schritt 2: CICS Dynamic Plan Selection Exit-Modul NDBUEXT verlinken

(Job I075, Step 1640)

  • Verlinken Sie das aus dem vorherigen Schritt resultierende Modul NDBUEXT mit der CICS-Ladebibliothek und definieren Sie es über einen entsprechenden PPT-Eintrag oder RDO.

    PPT-Eintrag:

    DFHPPT TYPE=ENTRY,PROGRAM=NDBUEXT,PGMLANG=ASSEMBLER

    Erläuterungen zu den Parametern finden Sie in der entsprechenden CICS-Literatur von IBM.

Schritt 3: DB2Entry definieren

Führen Sie den folgenden Schritt aus.

  • Definieren Sie einen DB2Entry mit RDO:

    DEFINE DB2ENTRY
      OVERTYPE TO MODIFY                                        CICS RELEASE = nnnn
      CEDA  DEFine DB2Entry(          )
       DB2Entry       : DB2ENTR
       Group          : NCI
       DEscription    :
      THREAD SELECTION ATTRIBUTES
       TRansid        : transaction-id
      THREAD OPERATION ATTRIBUTES
       ACcountrec     : None               None ! TXid ! TAsk ! Uow
       AUTHId         :
       AUTHType       : Userid             Userid ! Opid ! Group ! Sign ! TErm
                                           ! TX
       DRollback      : Yes                Yes ! No
       PLAN           :
       PLANExitname   : NDBUEXT
       PRIority       : High              High ! Equal ! Low
       PROtectnum     : 0005               0-2000
       THREADLimit    : 0005               0-2000
       THREADWait     : Pool               Pool ! Yes ! No

    Der Parameter PLANExitname muss das gleiche Programm angeben wie die NAME-Anweisung beim Installationsschritt CICS Dynamic Plan Selection Exit-Modul NDBUEXT verlinken.

    Alternativ oder zusätzlich können Sie das Plan-Exit-Programm NDBUEXT mit dem Parameter PLANExitname von PLANExitname der DB2Conn-Ressourcendefinition von CICS TS angeben.

Natural File Servers mit VSAM installieren

Wenn Sie den Natural File Server mit VSAM verwenden möchten, müssen Sie die folgenden zusätzlichen Installationsschritte durchführen:

Schritt 1: VSAM-Datensatz für den Natural File Server definieren

(Job I008, Step 1610)

Schritt 2: Dataset des Natural File Servers formatieren

(Job I075, Step 1610)

Schritt 3: CICS-Tabelle erstellen

  1. Fügen Sie einen zusätzlichen FCT-Eintrag hinzu, der für den Natural File Server und die Db2-Komponenten von Natural gemäß dem folgenden Beispiel erforderlich ist:

    CMFSERV  DFHFCT TYPE=DATASET,                                          *
                     ACCMETH=VSAM ,                                        *
                     BUFND=5,                                              *
                     BUFNI=4,                                              *
                     DATASET=CMFSERV,                                      *
                     DISP=SHR,                                             *
                     DSNAME=SAGLIB.NCIDB2.SERVER,                          *
                     FILSTAT=(ENABLED,CLOSED),                             *
                     JID=NO,                                               *
                     LOG=NO,                                               *
                     LSRPOOL=NONE,  1-8 ONLY FOR XA; NONE                  *
                     RECFORM=(FIXED,BLOCKED),                              *
                     RSL=PUBLIC,                                           *
                     SERVREQ=(ADD,UPDATE,DELETE,BROWSE),                   *
                     STRNO=4
  2. Assemblieren und verlinken Sie die CICS-Tabelle.

Schritt 4: CICS neu starten

  • Ein Neustart von CICS ist aufgrund des zusätzlichen, im vorherigen Schritt angegebenen FCT-Eintrags erforderlich.

Spezielle Installationsschritte für Com-plete

Unter Com-plete wird das Installationsverfahren für Natural for Db2 mit der Anpassung Ihrer Com-plete-Umgebung fortgesetzt.

Stellen Sie sicher, dass die für Db2 erforderlichen Änderungen in Ihrer Com-plete-Umgebung vorgenommen wurden (siehe den entsprechenden Abschnitt in der Com-plete-Dokumentation).

Spezielle Installationsschritte für IMS TM

In diesem Abschnitt werden die zusätzlichen Schritte beschrieben, die für die Installation von Natural for Db2 in einer IMS TM-Umgebung erforderlich sind.

Stellen Sie sicher, dass der Thread Ihrer Natural IMS TM-Schnittstelle groß genug ist, um die DB2SIZE aufzunehmen. Wenn Sie die Natural Tools for Db2 verwenden (beschrieben in der Datenbankmanagementsystem-Schnittstellen-Dokumentation), ist ein zusätzlicher Speicherplatz von 8 KB erforderlich.

Db2-Pläne einbinden

(Job I055, Steps 1631, 1632, 1633, 1634 for IMS MPP konversationell, IMS BMP, IMS MPP nicht konversationell, OBMP)

  • Erstellen Sie den Db2-Plan, der von Natural for Db2 in allen von Natural unterstützten IMS TM-Umgebungen verwendet werden soll.

Planauswahl mit IMS TM Resource Translation Table verwenden

Wenn der Name (oder ein ALIAS) Ihres umgebungsabhängigen Nukleus nicht mit dem Namen Ihres Db2-Plans übereinstimmt oder wenn Sie denselben Db2-Plan für alle IMS TM-Umgebungen verwenden möchten, müssen Sie einen Resource Translation Table (RTT) verwenden.

  • IMS TM RTT ändern, assemblieren und verlinken:

    Fügen Sie in Ihrer RTT ein zusätzliches DSNMAPN-Makro wie folgt hinzu (weitere Parameter finden Sie in der entsprechenden Db2-Literatur von IBM):

    DSNMAPN-Makro:

    DSNMAPN APN=load-module,PLAN=plan-name

    wobei load-module der umgebungsabhängige Nukleus ist (d.h. das IMS TM-Anwendungsprogramm) und plan-name derselbe ist, der auch beim Einbinden der Db2 Pläne verwendet wird.

Natural File Server mit VSAM installieren

Beachten Sie, dass Datenbankschleifen nicht über Terminal-Ein- und Ausgaben hinweg fortgesetzt werden können, wenn Sie keinen Natural File Server verwenden.

Wenn Sie den Natural File Server mit VSAM verwenden möchten, führen Sie die folgenden zusätzlichen Installationsschritte durch.

Schritt 1: VSAM-Dataset für den Natural File Server definieren

(Job I008, Step 1600)

Schritt 2: Dataset des Natural File Servers formatieren

(Job I075, Step 1600)

Schritt 3: JCL für die MPP-Region aktualisieren

  • Fügen Sie die DD-Anweisung CMFSERV ein, um den Dataset des Natural File Server zu definieren.

  • Erhöhen Sie den Parameter REGION, falls erforderlich.

Schritt 4: Die von der Natural IMS TM-Schnittstelle verwendete MPP-Region neu starten

  • Starten Sie Ihre MPP-Region wegen der zusätzlichen DD-Anweisung neu.

Spezielle Installationsschritte für TSO

Dieser Abschnitt beschreibt die zusätzlichen Installationsschritte, die in einer TSO-Umgebung erforderlich sind, wenn Sie den Natural File Server mit VSAM verwenden möchten.

Schritt 1: NDBFSRV in NTTSOP ändern

  • Setzen Sie den Schlüsselwort-Subparameter NDBFSRV (siehe Parameter-Referenz-Dokumentation) im NTTSOP-Makro auf ON und assemblieren und verlinken Sie Ihre Natural TSO-Schnittstelle neu.

Schritt 2: VSAM-Datensatz für den Natural File Server definieren

(Job I008, Step 1620)

Schritt 3: Dataset des Natural File Servers formatieren

(Job I075, Step 1620)

Installation überprüfen

Dieser Abschnitt enthält Beispiel-Batch-Jobs und beschreibt Online-Methoden zur Überprüfung der erfolgreichen Installation von Natural for Db2.

Batch Natural for Db2 unter CAF testen - Job NDBBATCA

NDBBATCA enthält eine Beispiel-JCL zum Testen von Natural for Db2 im Batch-Modus unter Verwendung der CAF-Schnittstelle (Call Attachment Facility).

Ändern Sie die Beispiel-JCL entsprechend Ihren Anforderungen.

Vor dem ersten SQL-Aufruf müssen Sie NATPLAN aufrufen, um den Plan explizit zuzuordnen. Der Name des Plans muss mit dem Namen übereinstimmen, der beim Installationsschritt Db2-Plan zur Verwendung mit Natural for Db2 erstellen verwendet wurde. NATPLAN kann bearbeitet werden, um die entsprechende Db2-Subsystemkennung (ID) anzugeben.

Batch Natural for Db2 unter DSN prüfen - Job NDBBATTB

NDBBATTB enthält eine Beispiel-JCL zum Testen von Natural for Db2 im Batch-Modus unter Verwendung des DSN-Kommandoprozessors. Ändern Sie die Beispiel-JCL entsprechend Ihren Anforderungen.

Der Name des Plans muss mit dem Namen übereinstimmen, der beim Installationsschritt Db2-Plan zur Verwendung mit Natural for Db2 erstellen verwendet wurde. Erläuterungen zu den -Kommandos DSN und RUN finden Sie in der entsprechenden IBM-Literatur für Db2/TSO- und Batch-Benutzer.

DSNMTV01 testen - Job NDBMTV01

NDBMTV01 enthält eine Beispiel-JCL zur Ausführung von Natural unter Nutzung der Db2-Batch-Unterstützung.

Ändern Sie die Beispiel-JCL, um sie an Ihre Anforderungen anzupassen.

Der Name des Plans muss mit dem Namen übereinstimmen, der beim Installationsschritt Db2-Plan zur Verwendung mit Natural for Db2 erstellen verwendet wurde.

TSO Natural for Db2 unter CAF testen - CLIST NDBCAF

Um die TSO-Installation von Natural for Db2 unter CAF (Call Attachment Facility) zu testen, können Sie folgende Schritte durchführen:

  1. CLIST NDBCAF anpassen

    (Job I070, Step 240C)

    Ändern Sie die Bibliotheks- und Programmnamen in der CLIST NDBCAF entsprechend Ihren Anforderungen. Wenn Sie den Natural File Server nicht verwenden, müssen Sie die Anweisungen ALLOC und FREE für CMFSERV entfernen.

  2. Natural aufrufen

    Rufen Sie Natural auf, indem Sie die im vorherigen Schritt angepasste CLIST ausführen. Vergewissern Sie sich, dass auf Db2-Tabellen zugegriffen werden kann und dass Plan-Switching möglich ist.

    Vor dem ersten SQL-Aufruf müssen Sie NATPLAN aufrufen, um den Plan explizit zuzuordnen. Der Name des Plans muss mit dem Namen übereinstimmen, der beim Installationsschritt Db2-Plan zur Verwendung mit Natural for Db2 erstellen verwendet wurde. NATPLAN kann bearbeitet werden, um die entsprechende Db2-Subsystemkennung (ID) anzugeben.

TSO Natural for Db2 unter DSN testen - CLIST NDBTSO

Sie können folgende Schritte durchführen, um die TSO-Installation von Natural for Db2 unter DSN zu testen:

  1. CLIST NDBTSO anpassen

    (Job I070, Step 240B)

    Ändern Sie die Subsystemkennung sowie die Bibliotheks-, Plan- und Programmnamen in der CLIST NDBTSO entsprechend Ihren Anforderungen. Wenn Sie den Natural File Server nicht verwenden, müssen Sie die ALLOC- und FREE-Anweisungen für CMFSERV entfernen.

  2. Natural aufrufen

    Rufen Sie Natural auf, indem Sie die im vorherigen Schritt erstellte CLIST ausführen. Stellen Sie sicher, dass auf Db2-Tabellen zugegriffen werden kann. Der Name des Plans muss mit dem Namen übereinstimmen, der in Db2-Pläne binden verwendet wird. Erläuterungen zu den Kommandos DSN und RUN finden Sie in der entsprechenden IBM-Literatur für Db2/TSO- und Batch-Benutzer.

Online-Überprüfungsmethoden

Sie können die erfolgreiche Installation von Natural for Db2 online überprüfen, indem Sie entweder SQL Services benutzen oder DEM2-Beispielprogramme verwenden.

SQL Services verwenden

Um die erfolgreiche Installation von Natural for Db2 zu überprüfen, können Sie die Funktion SQL Services (NDB/NSQ) (Beschreibung siehe Datenbankmanagement-Schnittstellen-Dokumentation) des Natural-Dienstprogramms SYSDDM verwenden:

  1. Rufen Sie Natural auf.

  2. Rufen Sie das Dienstprogramm SYSDDM auf.

  3. Geben Sie im SYSDDM-Hauptmenü den Funktionscode B ein, um die SQL Services (NDB/NSQ) aufzurufen.

  4. Geben Sie den Funktionscode S ein, um alle Db2-Tabellen auszuwählen.

    Die Kommunikation zwischen Natural und Db2 funktioniert, wenn alle vorhandenen Db2-Tabellen angezeigt werden.

    Generieren Sie für eine der Tabellen ein Natural-DDM, wie im Abschnitt DDM aus einer SQL-Tabelle generieren - Funktion: Generate DDM from an SQL Table in der Datenbankmanagementsystem-Schnittstellen-Dokumentation beschrieben.

  5. Nachdem Sie ein DDM generiert haben, können Sie mit einem einfachen Natural-Programm auf die entsprechende Db2-Tabelle zugreifen, wie im folgenden Beispiel gezeigt:

    DEFINE DATA
    01 view-name OF ddm-name 
    02 field
    ...
    END-DEFINE
    FIND view-name WITH field = value
      DISPLAY field
    END-FIND
    END

    wobei:
    view-name eine Datensicht (View) des DDM ddm-name ist,
    field ein DDM-Feld ist,
    value der Suchwert ist, der für das Feld verwendet werden soll.

Wenn Sie die Meldung NAT3700 erhalten, können Sie das Natural-Systemkommando SQLERR eingeben, um den entsprechenden SQL-Returncode anzuzeigen. SQLERR ist in der Systemkommandos-Dokumentation beschrieben.

DEM2*-Beispielprogramme verwenden

Um Ihre Installation zu überprüfen und zu testen, können Sie auch die DEM2*-Beispielprogramme in der Natural-Systembibliothek SYSDB2 verwenden, die auf dem Installationsdatenträger enthalten ist.

Sie können mit DEM2CREA eine Db2-Tabelle anlegen und dann mit dem Natural-Dienstprogramm SYSDDM das entsprechende DDM erstellen. Mit DEM2STOR können Sie Daten in der erstellten Tabelle speichern und mit DEM2FIND oder DEM2SEL Daten aus der Tabelle abrufen. Sie können die Tabelle auch mit dem Programm DEM2DROP löschen.

Natural-Parameter für Natural for Db2 ändern

In diesem Abschnitt werden die folgenden Themen behandelt:

Natural-Profilparameter-Einstellungen

Passen Sie das Natural-Parametermodul an Ihre Anforderungen an. Die in diesem Abschnitt erwähnten Natural-Parameter sind in der Parameter-Referenz-Dokumentation beschrieben.

DB2SIZE-Parameter

Geben Sie den Profilparameter DB2SIZE an:

DB2SIZE=nn

DB2SIZE gibt die Größe des Arbeitsbereichs an, der für die Verarbeitung von SQL-Anfragen verwendet wird. Er muss auf mindestens 6 KB eingestellt werden.

Die Einstellung von DB2SIZE hängt auch davon ab, ob Sie den Natural File Server verwenden oder nicht.

Wenn der Natural File Server nicht verwendet wird, kann die Einstellung nach der folgenden Formel berechnet werden:

((1064 + n1 * 48 + n2 * 120) + 1023) / 1024 KB

Wenn der Natural File Server verwendet wird, kann die Einstellung nach folgender Formel berechnet werden:

((1160 + n1 * 48 + n2 * 160 + n3 * 8) + 1023) / 1024 KB

Die Variablen n1, n2 und n3 entsprechen den folgenden Werten:

n1 Anzahl der Statements für den dynamischen Zugriff, wie als zweiter Parameter im Installationsschritt Natural for Db2 I/O Modul NDBIOMO generieren angegeben.
n2 Maximale Anzahl der verschachtelten Datenbankschleifen, wie mit dem Parameter MAXLOOP im Makro NTDB2 angegeben
n3 Maximale Anzahl der Natural File Server-Blöcke, die pro Benutzer zugewiesen werden sollen, angegeben als fünfter Parameter in Job I075, Schritt 1620, oder als EBPMAX-Parameter im NTDB2-Makro, wenn Sie sich entschieden haben, den Software AG Editor Buffer Pool als Natural File Server zu verwenden.

Der Parameter DB2SIZE kann auch dynamisch zu Beginn einer Natural-Sitzung angegeben werden.

Wichtig
Vergewissern Sie sich, dass Sie auch die für den Software AG Editor erforderlichen Natural-Parameter hinzugefügt haben; siehe die entsprechende Installationsbeschreibung im Kapitel Software AG Editor installieren.

Makro NTDB

Geben Sie im Makro NTDB den Datenbanktyp Db2 und eine Liste von DBIDs (Datenbankkennungen) an. Alle Natural DDMs, die sich auf eine Db2-Tabelle beziehen, müssen mit einer DBID aus dieser Liste katalogisiert werden. Die DBID kann eine beliebige Zahl zwischen 1 und 65535 sein. Für die meisten Umgebungen ist eine DBID (normalerweise 250) für den Datenbanktyp Db2 ausreichend.

Die Db2 DBIDs können auch dynamisch zu Beginn einer Natural-Sitzung mit Hilfe des Profilparameters DB festgelegt werden.

Wichtig
Stellen Sie sicher, dass alle Db2 DDMs, die beim Katalogisieren eines bestimmten Programms verwendet werden, eine gültige Db2 DBID haben. Stellen Sie außerdem sicher, dass die im NTDB-Makro für Db2 ausgewählten DBIDs nicht mit DBIDs in Konflikt stehen, die für andere Datenbanksysteme ausgewählt wurden.

Die DBID für SQL/DS, die beim Katalogisieren eines Natural-Programms verwendet wird, muss nicht in der NTDB-Liste der DBIDs enthalten sein, die beim Ausführen dieses Programms verwendet werden. Bei der Ausführung bestehender Natural-Programme ist die DBID 250 daher nicht zwingend erforderlich. Es folgen zwei Beispiele für NTDB-Makros:

NTDB DB2,250
NTDB DB2,(200,250,251)
Makro NTDB2

Setzen Sie die Schlüsselwort-Subparameter im Makro NTDB2 entsprechend Ihren Anforderungen.

Diese Schlüsselwort-Subparameter können auch dynamisch zu Beginn einer Natural-Sitzung mit Hilfe des Profilparameters DB2 angegeben werden.

Makro NTLFILE

Setzen Sie den Profilparameter LFILE im Makro NTLFILE, um eine logische DBID (Datenbankkennung) anzugeben, die sich auf den Datenbanktyp Db2 bezieht:

NTLFILE 100,250,1

Dies ist für die Verwendung von ISQL oder den Aufruf von NDBISQL mit Natural for Db2 erforderlich.

Zu Beginn einer Natural-Sitzung kann auch dynamisch der Profilparameter LFILE angegeben werden.

Performance-Überlegungen beim DB2SIZE-Parameter

Während der Ausführung eines SQL-Statements wird dynamisch Speicher zugeordnet, um die SQLDA zur Übergabe der Host-Variablen an Db2 zu erstellen.

In früheren Natural for Db2-Versionen wurde dieser Speicher immer vom TP-Monitor oder dem Betriebssystem bezogen. Aus Performance-Gründen wird nun zunächst versucht, den Speicherbedarf durch freien Platz im Natural for Db2-Puffer (DB2SIZE) zu decken. Wenn in diesem Puffer nicht genügend Platz vorhanden ist, wird der TP-Monitor oder das Betriebssystem aufgefordert, zusätzlichen Speicherplatz bereitzustellen.

Sie können GETMAIN-Anforderungen vermeiden, indem Sie DB2SIZE auf einen Wert setzen, der größer ist als der mit den Formeln im Abschnitt DB2SIZE-Parameter berechnete Wert.

Abhängig vom SQL-Ausführungsmodus und von der Verwendung des Natural File Servers kann der zusätzliche Speicherbedarf (in Bytes) wie folgt berechnet werden:

Dynamischer Modus

  • Bei sendenden Feldern:

    80 + n * 56

    Bei sendenden Feldern einschließlich LOB-Spalten:

    80 + 2 * n * 56

    wobei n die Anzahl der sendenden Felder in einem SQL-Statement ist.

    Der Speicher wird unmittelbar nach der Ausführung des SQL-Statements wieder freigegeben.

  • Bei empfangenden Feldern (d.h. mit Variablen der INTO-Klausel (siehe INTO-Klausel (into-clause) eines SELECT-Statements):

    80 + n * 56 + 24 + n * 2

    Bei empfangenden Feldern einschließlich LOB-Spalten:

    80 + 2 * n * 56 + 24 + n * 2

    wobei n die Anzahl der empfangenden Felder in einem SQL-Statement ist.

    Der Speicherplatz bleibt bis zum Beenden der Schleife zugeordnet.

Statischer Modus

  • Bei sendenden Feldern:

    80 + n * 24

    Bei sendenden Feldern einschließlich LOB-Spalten:

    80 + 2 * n * 56

    wobei n die Anzahl der sendenden Felder in einem SQL-Statement ist.

    Der Speicher wird unmittelbar nach der Ausführung des SQL-Statements wieder freigegeben.

  • Bei empfangenden Feldern (d.h. mit Variablen der INTO-Klausel (siehe INTO-Klausel (into-clause) eines SELECT-Statements):

    80 + n * 24 + 24 + n * 2

    Bei empfangenden Feldern einschließlich LOB-Spalten:

    80 + 2 * n * 56 + 24 + n * 2

    wobei n die Anzahl der empfangenden Felder in einem SQL-Statement ist.

    Der Speicherplatz bleibt bis zum Beenden der Schleife zugeordnet.

Speicherplatzbedarf für den Natural File Server

Bei Verwendung des Natural File Servers wird für jede Datenbankschleife, die positionierte UPDATE- und/oder DELETE-Statements enthält, zusätzlicher Speicherplatz benötigt.

Für jede dieser Schleifen wird ein Puffer zugewiesen, um den Inhalt aller in der INTO-Klausel enthaltenen Empfangsfelder zu speichern (siehe into-clause). Die Größe dieses Puffers entspricht also der Gesamtlänge aller empfangenden Felder:

20 + 4 + sum (length (v1), ..., length (vn))

wobei v1 ... vn sich auf die in der INTO-Klausel enthaltenen Variablen bezieht.

Der Puffer bleibt bis zum Beenden der Schleife zugeordnet.

Berechnungsbeispiel für den dynamischen Modus ohne Verwendung des Natural File Servers

Wenn Sie für beide Variablen (n1 und n2) den Standardwert 10 verwenden, beträgt der berechnete DB2SIZE-Wert 2208 Byte. Wenn Sie jedoch stattdessen einen DB2SIZE-Wert von 20 KB angeben, beträgt der verfügbare Platz für dynamisch zugewiesenen Speicher 18272 Byte, d. h. es steht genügend Platz für bis zu 325 sendende Felder oder 313 empfangende Felder zur Verfügung.

Da der Platz für empfangende Felder bis zur Beendigung einer Datenbankschleife zugeordnet bleibt, wird die Anzahl der Felder, die innerhalb einer solchen Schleife verwendet werden können, entsprechend verringert. Wenn Sie zum Beispiel 200 Felder abfragen, können Sie etwa 110 Felder innerhalb der Schleife aktualisieren.

Überlegungen zu VARCHAR-Feldern

Bei der Verwendung von VARCHAR-Feldern (d. h. Feldern, die entweder ein zugehöriges L@-Feld in der Natural-Datensicht (View) oder eine explizite LINDICATOR-Klausel enthalten) wird dynamisch zusätzlicher Speicherplatz zugeordnet, wenn das L@- oder LINDICATOR-Feld nicht direkt vor dem entsprechenden Basisfeld angegeben wird. Geben Sie daher diese Felder immer vor ihren Basisfeldern an.

Besondere Anforderungen bei Natural Tools for Db2

Beachten Sie die folgenden Anforderungen und Empfehlungen für die Verwendung der Natural Tools for Db2 (Beschreibung siehe Datenbankmanagement-Schnittstellen-Dokumentation).

Retrieval- und Explain-Funktionen

Um unabhängig von Db2-Versionen zu sein, wurden die Retrieval- und Explain-Funktionen der Natural Tools for Db2 so konzipiert, dass sie nicht direkt auf die Db2-Katalogtabellen zugreifen, sondern auf identische Tabellen, die durch den Erstellernamen SYSSAG qualifiziert sind.

Bevor Sie also die Retrieval- oder Explain-Funktionen verwenden können, müssen Sie diese Tabellen anlegen. Die SYSSAG-Tabellen müssen dieselben Spalten haben wie die Db2-Katalogtabellen und sie müssen als ALIAS, VIEW oder TABLE erstellt werden.

Sie können den Beispiel-SQLCODE verwenden, der zum Erstellen dieser Tabellen im Member DEMSQL4 in der Natural-Systembibliothek SYSDB2 bereitgestellt wird. Standardmäßig wird ein ALIAS SYSSAG.xxx für die entsprechende SYSIBM-Tabelle erstellt.

Für einige Katalogtabellen sind keine Indizes definiert. Aus Performance-Gründen sollten Sie erwägen, Kopien dieser Tabellen mit entsprechenden Indizes zu erstellen.

Wir empfehlen Ihnen, mit Kopien der Katalogtabellen für die folgenden Tabellen zu arbeiten:

SYSCOLAUTH
SYSDBRM
SYSFOREIGNKEYS
SYSINDEXPART
SYSKEYS
SYSSTMT
SYSSYNONYMS
SYSTABLEPART
SYSVIEWS

Die erforderlichen CREATE TABLE- und CREATE INDEX-Anweisungen sind als Kommentare in dem Beispiel-SQL-Member DEMSQL4 enthalten. Darüber hinaus enthält DEMSQLUP Beispiel-SQLCODE zum Aktualisieren der Daten in den Kopien der Katalogtabellen.

Für jede andere Tabelle empfehlen wir, einen ALIAS oder eine VIEW anzulegen, der bzw. die auf die entsprechende SYSIBM-Tabelle zeigt.

Anmerkung
Die Beispiel-SQL-Member können mit dem ISQL-Teil von SYSDB2 ausgeführt werden. Mit ISQL können Sie SQL-Member aus der Natural-Systembibliothek SYSDB2 lesen. Sie können ein SQL-Member in einer beliebigen anderen Bibliothek speichern, indem Sie mit dem Kommando LIBRARY MYLIB aus dem ISQL-Eingabebildschirm in eine andere Bibliothek wechseln und das SQL-Member dort speichern. In der Bibliothek SYSDB2 können Sie keine SQL-Member speichern.

LISTSQL- und Explain-Funktionen

Diese Funktionen greifen auf Db2 PLAN_TABLEs zu. Sie können diese Funktionen nur verwenden, wenn eine PLAN_TABLE für Ihre SQLID existiert. Das Layout der PLAN_TABLE finden Sie in der Db2-Literatur von IBM zum Kommando EXPLAIN.

Wir empfehlen Ihnen, einen Index für die folgenden Spalten der PLAN_TABLE zu erstellen:

APPLNAME
PROGNAME
COLLID
QUERYNO
TIMESTAMP
DESC
QBLOCKNO
PLANNO
MIXOPSEQ

Natural for Db2 Server Stub

Besondere Anforderungen bei Natural Tools for Db2

Ein Natural for Db2 Server Stub ist ein Schnittstellenmodul, das für die Kommunikation zwischen dem Db2-Datenbanksystem und dem Natural-Server benötigt wird. Das Server-Stub-Modul bestimmt eine Natural-Serverumgebung, richtet sie ein und ruft sie auf, damit Natural Stored Procedures und Natural User-Defined Functions ausgeführt werden können.

Wie unter Installationsvorgang erwähnt, gibt es zwei Arten von Server Stubs: den Natural for Db2 Start Server Stub (STR) und den Natural for Db2 Server Stub (SRV). Beide Stubs werden aus dem Makro NDBSTUB generiert.

Natural for Db2 Start Server Stub

Der Natural for Db2 Start Server Stub wird für die Einrichtung der gewünschten Natural-Server-Umgebungen verwendet. Der Start Server Stub muss das Hauptausführungsprogramm im Stored Procedure Address Space (SPAS) sein. Nachdem der Startserver-Stub die Natural-Server-Umgebungen eingerichtet hat, übergibt er die Kontrolle an das entsprechende Db2-Programm (DSNX9WLM für WLM SPAS und DSNX9STP für Db2 SPAS). Wenn SPAS beendet wird, gibt das Db2-Programm die Kontrolle an den Start Server Stub zurück. Der Start Server Stub stoppt die Natural-Server-Umgebungen und gibt die Kontrolle an das Betriebssystem zurück.

Der Natural for Db2 Start Server Stub liest die Namen und Parameter des zu startenden Natural-Servers aus dem Dataset CMSRVIN. CMSRVIN muss mit dem DD-Namen CMSRVIN angegeben werden.

Der Dataset CMSRVIN ist eine sequenzielle Datei, die alle zum Starten der gewünschten Natural-Server erforderlichen Informationen enthält. Für jeden Server, der gestartet werden soll, muss ein START-Eintrag angegeben werden. Die für die START-Einträge verwendeten Parameter sind identisch mit den Parametern, die für das Makro NDBSTUB gelten. Schließen Sie den Inhalt jedes START-Eintrags in Klammern ein und grenzen Sie Kommentare durch die folgenden Zeichen ab: /* und */.

Beispiel für START-Einträge:

START=(SERVER=NDBvrSRV,NATURAL=NATBATvr,CMPRMIN=CMPRMIN,          
        CMPRINT=CMPRINT,CMTRACE=CMTRACE,THREADSIZE=768,            
        THREADNUMBER=2,TRACE=ON)                                   
 START=(SERVER=WDBvrSRV,NATURAL=NATBATvr,CMPRMIN=CMPRMIN,          
        CMPRINT=CMPRINT,CMTRACE=CMTRACE,THREADSIZE=768,            
        THREADNUMBER=2,TRACE=ON)                                   
/*  START=(SERVER=QEvrsSRV,NATURAL=NATBATvr,CMPRMIN=QAPARM, */     
/*        CMPRINT=CMPRINT,CMTRACE=CMTRACE,THREADSIZE=700, */       
/*        THREADNUMBER=2,TRACE=OFF) */

Wenn der Start Server Dataset fehlt oder nicht zugewiesen wurde, startet der Start Server Stub eine Natural Server-Umgebung mit den Parametern, die sich aus den für den Start Server Stub selbst definierten Parametern ergeben.

Natural for Db2 Server Stub angeben

Der Natural for Db2 Server Stub ist die Verbindung zwischen Db2 und Natural Stored Procedures oder Natural User-Defined Functions (Natural UDFs). Geben Sie den Natural for Db2 Server Stub als EXTERNAL NAME in der Tabellenzeile SYSIBM.SYSROUTINES an, die auf die Natural Stored Procedure oder Natural UDF verweist. Der Server Stub wird von Db2/WLM gestartet, wenn die Natural Stored Procedures oder Natural UDFs aufgerufen werden. Der Natural for Db2 Server Stub erzeugt eine Natural-Sitzung in der Natural-Serverumgebung und ruft das Natural-Subprogramm auf, das die Natural Stored Procedure oder die Natural UDF enthält.

Eine Natural-Sitzung, die für die Ausführung einer Natural Stored Procedure angelegt wurde, wird beendet, wenn das entsprechende Natural-Subprogramm endet und die Kontrolle an Db2 und den aufrufenden Client zurückgeht.

Eine Natural-Sitzung, die für die Ausführung einer Natural UDF erstellt wurde, bleibt für mehrere Funktionsaufrufe aktiv, wenn das Attribut PARALLEL auf D und das Attribut FINAL CALL auf Y gesetzt ist. Die für eine Natural UDF-Funktion aufgerufene Sitzung wird vom Server Stub beendet, wenn er einen Beendigungsaufruf erkennt.

JCL-Prozedur

Die JCL-Prozedur des Stored Procedure Address Space (SPAS) muss den Natural for Db2 Start Server Stub als Programm in der EXEC-Anweisung angeben.

Der Natural for Db2 Start Server Stub und der Natural for Db2 Server Stub müssen sich in einer Bibliothek befinden, die in der Steplib-Verkettung der JCL-Prozedur des SPAS enthalten ist.

Beispiel für eine JCL:

//*************************************************************
//*    JCL FOR RUNNING THE WLM-ESTABLISHED STORED PROCEDURES
//*    ADDRESS SPACE                                        
//*       RGN     -- MVS REGION SIZE FOR THE ADDRESS SPACE. 
//*       DB2SSN  -- DB2 SUBSYSTEM NAME.                    
//*       NUMTCB  -- NUMBER OF TCBS USED TO                 
//*                  PROCESS END USER REQUESTS.             
//*       APPLENV -- MVS WLM APPLICATION ENVIRONMENT        
//*                  SUPPORTED BY THIS JCL PROCEDURE.       
//*
//*************************************************************
//DBvrsENV PROC RGN=0K,APPLENV=DBvrsENV,DB2SSN=DBvrs,NUMTCB=8
//IEFPROC EXEC PGM=NDBvrSTR,REGION=&RGN,TIME=NOLIMIT, /* Start server stub
//*IEFPROC EXEC PGM=DSNX9WLM,REGION=&RGN,TIME=NOLIMIT,
//        PARM='&DB2SSN,&NUMTCB,&APPLENV'
//STEPLIB  DD  DISP=SHR,DSN=DSNvrs.RUNLIB.LOAD
//         DD  DISP=SHR,DSN=CEE.SCEERUN
//         DD  DISP=SHR,DSN=DSNvrs.SDSNLOAD
//         DD  DISP=SHR,DSN=NATURAL.LOAD /* Library containing stubs and nucleus 
//CMPRMIN  DD  DISP=SHR,DSN=hilev.SOURCE(DYNPARM) /* Dynamic Natural parameters
//CMSRVIN  DD  DISP=SHR,DSN=hilev.SOURCE(CMSRVIN) /* Servers to be started
//CEEDUMP  DD  SYSOUT=X
//SYSOUT   DD  SYSOUT=X /* Traces records of server stub
//RMTRACE  DD  SYSOUT=X
//CMPRINT  DD  SYSOUT=X 
//SYSPRINT DD  SYSOUT=X 
//SYSERROR DD  SYSOUT=X 
//SYSUDUMP DD  SYSOUT=X

wobei hilev für einen High-Level-Qualifier steht.

Makro NDBSTUB

Das Makro NDBSTUB wird verwendet, um den Natural for Db2 Server Stub und den Natural for Db2- Start Server Stub zu generieren. Sie können NDBSTUB parametrisieren, um verschiedene Stubs zu erzeugen.

Im Folgenden sind die bei NDBSTUB verfügbaren Parameter aufgeführt:

CMPRINT | CMPRMIN | CMTRACE | GTRACE | GTRCID | MODE | NATURAL | SERVER | THREADSIZE | TRACE | WLM

CMPRINT - DD-Name des CMPRINT-Dataset

CMPRINT gibt den DD-Namen des CMPRINT-Dataset an, in den die primäre Berichtsausgabe geschrieben wird. Wenn ein Stern (*) angegeben wird, wird ein eindeutiger ddname Pnnnnnnn gebildet, wenn eine Natural Stored Procedure aufgerufen wird.

Mögliche Werte:

Wert Erläuterung
ddname Jeder gültige 8-stellige DD-Name.
CMPRINT Dies ist der Standardname.

CMPRMIN - DD Name of CMPRMIN Data Set

CMPRMIN gibt den DD-Namen des CMPRMIN-Dataset beim Start an, um den Eingabeparameter PROFILE für diesen Server zu lesen.

Mögliche Werte:

Wert Erläuterung
ddname Jeder gültige 8-stellige DD-Name.
CMPRMIN Dies ist der Standardname.

CMTRACE - DD-Name des CMTRACE-Dataset

CMTRACE gibt den DD-Namen des CMTRACE-Dataset an, in den die primäre Berichtsausgabe geschrieben wird. Wenn ein Stern (*) angegeben wird, wird bei jedem Aufruf einer Natural Stored Procedure ein eindeutiger ddname Pnnnnnnn gebildet, so dass jede Ausgabe separat gespeichert werden kann.

Mögliche Werte:

Wert Erläuterung
ddname Jeder gültige 8-stellige DD-Name.
CMTRACE Dies ist der Standardname.

GTRACE - Natural for Db2 Server Stub zum Ausführen von GTRACE-Aufrufen

GTRACE gibt an, ob der Server Stub GTRACE-Makroaufrufe für Tracing-Zwecke ausführt oder nicht.

Mögliche Werte:

Wert Erläuterung
ON Der generierte Server Stub führt GTRACE-Makros aus, um seine Verarbeitung zu dokumentieren.
OFF Der generierte Server Stub führt während seines Verarbeitungszyklus keine GTRACE-Makros aus.

Dies ist der Standardwert.

GTRCID - Zu verwendende GTRACE-ID

GTRCID gibt die Event-ID an, die mit den vom Natural for Db2 Server Stub erstellten Trace-Daten aufgezeichnet wird.

Mögliche Werte:

Wert Erläuterung
event-id Dezimalzahl von 0 bis 1023
203

Dies ist der Standardwert.

MODE - Betriebsart des Natural for Db2 Server Stub

MODE bestimmt die Betriebsart des generierten Natural for Db2 Server Stub.

Wert Erläuterung
STR Der generierte Natural for Db2 Server Stub arbeitet als Natural for Db2 Start Server Stub, der die Natural-Serverumgebung einrichtet.
SRV Der generierte Natural for Db2 Server Stub arbeitet als Natural for Db2 Server Stub, der die zugehörige Natural Stored Procedure oder Natural UDF aufruft.

Dies ist der Standardwert.

NATURAL - Name des Server-Frontends oder Natural Servers

NATURAL bezeichnet den Namen des Server-Frontends oder des Natural-Server-Lademoduls, das vom Natural for Db2 Server Stub geladen wird, wenn das externe CMSTART bei der Erstellung des Server-Stubs noch nicht vom Linkage-Editor aufgelöst wurde. Das benannte Lademodul muss in einer beliebigen Steplib des Stored-Procedure-Adressraums vorhanden sein.

Wert Erläuterung
name Beliebiger gültiger Lademodulname.
NATBATvr Dies ist der Standardwert.

SERVER - Servername für die Natural-Server-Umgebung

Servernamen mit dem Suffix SRV bezeichnen die Namen der Server, die vom Server-Frontend verwendet werden, um den Natural Server zu identifizieren. Diese Namen müssen innerhalb eines Adressraums eindeutig sein.

Wert Erläuterung
server-name Servername mit bis zu 5 Zeichen.
NDBvr Dies ist der Standardwert.

THREADSIZE - Größe der Natural-Threads für Natural Server

THREADSIZE bestimmt die Größe der Natural-Threads, die vom Natural Server verwendet werden sollen. Die Größe wird in Kilobyte-Einheiten angegeben.

Wert Erläuterung
threadsize Dezimalzahl.
768 Dies ist der Standardwert.

TRACE - Natural for Db2 Server Stub soll Trace-Sätze schreiben

Bestimmt, ob der generierte Natural for Db2 Server Stub Trace-Sätze schreibt. Die Trace-Aufzeichnungen werden in den mit ddname SYSOUT angegebenen Dataset geschrieben.

Wert Erläuterung
YES Trace-Sätze werden geschrieben.
NO Es werden keine Trace-Sätze geschrieben. Dies ist der Standardwert.

WLM - Natural for Db2 Start Server Stub Modus WLM/DB2 SPAS

WLM (Workload Manager) gibt an, wohin die Kontrolle übergeben wird, nachdem der Natural for Db2 Start Server Stub die angeforderten Natural-Server-Umgebungen eingerichtet hat.

Dieser Parameter wird nur ausgewertet, wenn der Parameter MODE=STR gesetzt ist. Geben Sie WLM=YES an, wenn der Natural for Db2 Start Server Stub in einem Adressraum läuft, der von WLM eingerichtet wurde.

Wert Erläuterung
YES Der Start Server Stub erzeugt Links zu DSNX9WLM, nachdem er die Natural-Server-Umgebungen eingerichtet hat.
NO Der Start Server Stub generiert Links zu DSNX9STP, nachdem er die Natural-Server-Umgebungen eingerichtet hat

Dies ist der Standardwert.