DB2 z/OS   DB2 LUW
z/OS CICS VTAM

DB2 z/OS Info

Home


Connection zu einer LUW-Datenbank aufbauen 


Um eine connection vom DB2 z/OS zu einer anderen Datenbak (LUW) aufzubauen, muessen folgende Schritte  gemacht werden !

Folgende Tabellen muessen bearbeitet werden !
1. ) SYSIBM.IPNAMES
2. ) SYSIBM.LUNAMES
3. ) SYSIBM.LOCATIONS
4. ) SYSIBM.USERNAMES  (wenn user und using nicht angegeben werden)

Aenderungen bei den Inserts die gemacht werden muessen !
1.) Change <LUWDB>                    your database
1.) Change <LUWLINK>                your LINKNAME
2.) Change <LUWSERVER>           your serve name /  IPADDR
3.) Change <LUWPORT>                your port on the LUWDB-Server
4.) Change <LUWUSERID>            your userid  on the LUWDB-Server
5.) Change <LUWPASSWORD>    your password  on the LUWDB-Server (case sensitive)

Insert into SYSIBM.IPNAMES
(LINKNAME  ,SECURITY_OUT ,USERNAMES ,IBMREQD ,IPADDR )
VALUES ('<LUWLINK>     ',
         'P'    ,
        'O'    ,
        'N'    ,
        '<LUWSERVER>'
    )
;

insert into sysibm.lunames ( LUNAME, SYSMODENAME ,SECURITY_IN ,SECURITY_OUT
,ENCRYPTPSWDS ,MODESELECT ,USERNAMES ,GENERIC ,IBMREQD )
values (
'<LUWDB>     '  
,'        '  
,'A'  
,'A'  
,'N'  
,'N'  
,' '  
,'N'  
,'N'
)
;

Insert Into sysibm.locations (LOCATION , LINKNAME , IBMREQD , PORT , TPN )
Values (
  '<LUWDB>             '  
, '<LUWLINK>     '  
, 'N'  
, '<LUWPORT>'  
, 'DB22TPN'
)
;

insert into sysibm.usernames ( TYPE , AUTHID , LINKNAME , NEWAUTHID
, PASSWORD , IBMREQD)
Values (
  'O'  
, '        '  
, '<LUWLINK> '  
, '<LUWUSERID>'  
, '<LUWPASSWORD>'  
, 'N'
)
;

-- Jetzt ein stop ddf und ein start ddf

Danach muss die Application gebunden werden, zum Beispiel SPUFI !

DSN SYSTEM(<SSID>)
BIND PACKAGE(<LUWDB>.DSNESPCS) MEMBER(DSNESM68) -
     ACTION(REPLACE) ISOLATION(CS) ENCODING(EBCDIC) -
     LIBRARY('<YOUR>.SDSNDBRM')
End

Danach kann ein SQL-Statement im Spufi ausgefuehrt werden  !

For remote SQL processing:
10  CONNECT LOCATION  ===> <LUWDB>  

(Beispiel !)

SELECT SUBSTR(RTRIM(CREATOR) CONCAT '.' CONCAT RTRIM(NAME), 1, 60)
FROM SYSIBM.SYSTABLES
WHERE TYPE = 'T'
;

DSNREXX  binden  mit
SQLERROR(CONTINUE) :

DSN SYSTEM(
<SSID>)
  BIND PACKAGE(<LUWDB>.DSNREXXRR) MEMBER(DSNREXX) -
       ACTION(REPLACE) ISOLATION(RR)                                            -
       LIBRARY('<YOUR>.SDSNDBRM')                                                 -
       VALIDATE(BIND) CURRENTDATA(NO)                                      -
       ENCODING(EBCDIC) SQLERROR(CONTINUE)
END



-- DSNTEP :

DSN SYSTEM(
<SSID>)
BIND PACKAGE(<LUWDB>.DSNTEP2)                MEMBER(DSN@EP2L)   -
      LIBRARY('<YOUR>.SDSNDBRM') -
      SQLERROR(CONTINUE) -
     VALIDATE(RUN)          ISOLATION(CS)
BIND PACKAGE(<LUWDB>.DSNTEP4)                MEMBER(DSN@EP4L)   -
      LIBRARY('<YOUR>.SDSNDBRM') -
      SQLERROR(CONTINUE) -
     VALIDATE(RUN)          ISOLATION(CS)

 END

-- DSNUTIL z.b FUER CROSSLOAD

DSN SYSTEM(
<SSID>)
BIND PACKAGE(<LUWDB>.DSNUTIL)          MEMBER(DSNUGSQL)  -
      LIBRARY('<YOUR>.SDSNDBRM') -
     VALIDATE(RUN)          ISOLATION(CS)
END