Creating a DB2 for z/OS database for the UDDI registry

Perform this task if you want to use DB2 for z/OS as the database store for your UDDI registry data.

 

Before you begin

In order to connect from a machine running a distributed operating system to a remote DB2 database on the z/OS operating system, you must have DB2 Version 8.2 or later. You must also have a DB2 Connect license (see the DB2 documentation for more information).

 

About this task

You only need to perform this task once for each UDDI registry, as part of setting up and deploying a UDDI registry.

If you are creating a remote database, use the database product documentation to familiarize yourself with the relevant capabilities of the product before proceeding with this task.

Note: There are some known restrictions1 with DB2 for zSeries Version 7.

 

Procedure

  1. Copy the createddl.sh script supplied in app_server_root/UDDIReg/rexx, to a temporary directory of your choice.
  2. Using the UNIX System Services (USS) command prompt, edit the copy of the createddl.sh script, as follows:
    1. Search for the text 'Define some constants'.
    2. If you have installed WAS in a non default location, update the root_dir constant to reflect this (note that the UDDIReg directory must remain at the end of the path).
    3. Update the temp_dir constant to a temporary directory of your choice, if you do not want to accept the default.
  3. Using the USS command prompt, run the copy of the createddl.sh script by entering the following command:
    createddl.sh database_name tablespace_name hlq
    where the parameters are as follows:
    database_name
    This is the name which will be used when defining the required DB2 tables and other components. The default is UDDI30.
    tablespace_name
    This is the tablespace in which the database's tables will be defined. The default is UDDI30TS.
    hlq
    This is the high level qualifier under which the SQL and JCL partitioned datasets (PDS) will be created. The default is IBMUSER.

    The script generates the partitioned data sets hlq.UDDI.SQL and hlq.UDDI.JCL, containing members that are required for subsequent steps. Using the default parameters listed above, a successful execution of the script results in the following output:

    database.tablespace = UDDI30.UDDI30TS
     HLQ = IBMUSER
     (  14) /WebSphere/V6R0M0/AppServer/UDDIReg/databaseScripts/uddi30crt_10_prereq_db2.sql
     ( 436) /WebSphere/V6R0M0/AppServer/UDDIReg/databaseScripts/uddi30crt_20_tables_generic.sql
     ( 136) /WebSphere/V6R0M0/AppServer/UDDIReg/databaseScripts/uddi30crt_25_tables_db2udb.sql
     ( 452) /WebSphere/V6R0M0/AppServer/UDDIReg/databaseScripts/uddi30crt_30_constraints_generic.sql
     (  14) /WebSphere/V6R0M0/AppServer/UDDIReg/databaseScripts/uddi30crt_35_constraints_db2udb.sql
     ( 559) /WebSphere/V6R0M0/AppServer/UDDIReg/databaseScripts/uddi30crt_40_views_generic.sql
     (  94) /WebSphere/V6R0M0/AppServer/UDDIReg/databaseScripts/uddi30crt_45_views_db2udb.sql
     ( 329) /WebSphere/V6R0M0/AppServer/UDDIReg/databaseScripts/uddi30crt_50_triggers_db2udb.sql
     (  16) /WebSphere/V6R0M0/AppServer/UDDIReg/databaseScripts/uddi30crt_60_insert_initial_static_
            data.sql
     (  39) /WebSphere/V6R0M0/AppServer/UDDIReg/databaseScripts/uddi30crt_70_insert_default_database_
            indicator.sql
     Conversion complete
     /tmp/udditmp/makedb71.jcl     ===> IBMUSER.UDDI.JCL(MAKEDB71)
     /tmp/udditmp/makedb81.jcl     ===> IBMUSER.UDDI.JCL(MAKEDB81)
     /tmp/udditmp/table.sql        ===> IBMUSER.UDDI.SQL(TABLE)
     /tmp/udditmp/table7.sql       ===> IBMUSER.UDDI.SQL(TABLE7)
     /tmp/udditmp/index.sql        ===> IBMUSER.UDDI.SQL(INDEX)
     /tmp/udditmp/view.sql         ===> IBMUSER.UDDI.SQL(VIEW)
     /tmp/udditmp/trigger.sql      ===> IBMUSER.UDDI.SQL(TRIGGER)
     /tmp/udditmp/alter.sql        ===> IBMUSER.UDDI.SQL(ALTER)
     /tmp/udditmp/initial.sql      ===> IBMUSER.UDDI.SQL(INITIAL)
     /tmp/udditmp/insert.sql       ===> IBMUSER.UDDI.SQL(INSERT)
  4. There are two sample jobs in the JCL library for creating the DB2 database, one for DB2 version 7 and one for DB2 version 8. The JCL for these jobs can be found in members MAKEDB71 and MAKEDB81 respectively, in the hlq.UDDI.JCL PDS. These JCL scripts are templates; modify the template in the appropriate MAKEDB member according to your DB2 setup and whether you want a default or a customized UDDI node:
    • Add or modify the JOB accounting information, if required.
    • If you used a different high level qualifier from the default when running the script in step one, ensure that all occurrences of IBMUSER are changed to the qualifier that you specified.
    • If you do not want your database to be used as a default UDDI node, comment out the line of the job which specifies the INSERT member of the SQL PDS; this should be the last line in the job.
    • Ensure that all occurrences of the LIB parameter correctly reflect the directory into which you installed DB2.
  5. Use TSO to submit the job that you modified in the previous step. The job will create the DB2 database.

 

What to do next

Continue with setting up and deploying your UDDI registry node.