Creating the database data sets of the IMS catalog manually

To define and create the IMS catalog database data sets yourself, you can use JCL and IDCAMS commands.

When the IMS management of ACBs is enabled, the IMS catalog uses additional system data sets that cannot be created manually. These data sets are considered extensions of the IMS catalog and include the IMS directory data sets, an IMS directory staging data set, and an IMS directory bootstrap data set. IMS creates these system data sets automatically the first time you load ACBs into the IMS catalog when you enable the IMS management of ACBs. IMS automatically allocates additional data sets for the IMS directory if the existing data sets of the IMS directory reach their capacity.

Note: The IMS catalog is a full-function database type (ACCESS=PHIDAM,OSAM) supporting OSAM Physical Sequential data sets or VSAM Linear Data Sets.

HALDB databases use a data set naming convention that requires specific suffixes on the data set names. For example, A00001, X00001, and so on. You must use these suffixes as shown in the examples in the following steps.

For the VSAM data sets for the primary index, secondary index, and the indirect list data set (ILDS), the KEYS and RECORDSIZE parameters must be specified as shown in the following example for each.

To help determine the sizes to enter for the database data sets, the primary index data set, the ILDS, and the secondary index data set, you can run the IMS Catalog Populate utility with the DFSCP000 PSB to generate size estimates that are based on your ACB library.

Procedure

  1. Create the partition data sets by using JCL.
    For example:
      //DFSC001A DD  DSN=dsnprefix.DFSCD000.A00001,DISP=(NEW,CATLG),
      //             SPACE=(CYL,(primary,secondary)), 
      //             UNIT=name,VOL=SER=volser
      //DFSC001B DD  DSN=dsnprefix.DFSCD000.B00001,DISP=(NEW,CATLG),
      //             SPACE=(CYL,(primary,secondary)), 
      //             UNIT=name,VOL=SER=volser
      //DFSC001C DD  DSN=dsnprefix.DFSCD000.C00001,DISP=(NEW,CATLG),
      //             SPACE=(CYL,(primary,secondary)), 
      //             UNIT=name,VOL=SER=volser
      //DFSC001D DD  DSN=dsnprefix.DFSCD000.D00001,DISP=(NEW,CATLG),
      //             SPACE=(CYL,(primary,secondary)), 
      //             UNIT=name,VOL=SER=volser
    
    Note: This example
  2. Create the primary index data set, the ILDS data set, and the secondary index data set by using the following IDCAMS commands.
    For example:
      /* PRIMARY INDEX DATA SET          */ 
      
      DEFINE  CLUSTER ( -                              
                NAME (dsnprefix.DFSCD000.X00001) -     
                CYL(primary,secondary) -                
                REUSE -                                
                VOL(volser) -                          
                FREESPACE(80,10) -                     
                SHAREOPTIONS(3,3) -                    
                SPEED ) -                              
              DATA ( -                                 
                NAME(dsnprefix.DFSCD000.X00001.DATA) -
                CISZ(512) -                            
                KEYS(16,5) -                           
                RECORDSIZE(22,22) ) -                  
              INDEX ( -                                
                NAME(dsnprefix.DFSCD000.X00001.INDEX) -
                CISZ(2048) )
     
    /* INDIRECT LIST DATA SET                    */ 
                                                      
      DEFINE  CLUSTER ( -                              
                NAME (dsnprefix.DFSCD000.L00001) -     
                CYL(primary,secondary) -               
                REUSE -                                
                VOL(volser) -                          
                FREESPACE(80,10) -                     
                SHAREOPTIONS(3,3) -                    
                SPEED ) -                              
              DATA ( -                                 
                NAME(dsnprefix.DFSCD000.L00001.DATA) - 
                CISZ(512) -                            
                KEYS(9,0) -                            
                RECORDSIZE(50,50) ) -                  
              INDEX ( -                                
                NAME(dsnprefix.DFSCD000.L00001.INDEX) -
                CISZ(2048) )
     
    /* SECONDARY INDEX DATA SET                */
    
      DEFINE  CLUSTER ( -  
                NAME(dsnprefix.DFSCX000.A00001) - 
                CYL(primary,secondary) -
                REUSE -
                VOL(volser) -
                INDEXED -
                KEYS(37,45) -
                RECORDSIZE(82,82) -
                FREESPACE(80,10) -
                SHAREOPTIONS(3,3) -
                SPEED ) -
              DATA (CISZ(4096) )