The following sample code (GFSAMHDJ member of SYS1.SAMLIB) shows
how to allocate mount handle data sets, copy previous mount handle
data sets to the new size needed for the current release, and how
to allocate lock data sets.
Figure 1. Sample code for creating
mount handle data sets and lock data sets//MVSNFSA JOB ,
// MSGCLASS=A,MSGLEVEL=(1,1),TIME=30,REGION=12M,CLASS=A
//*
//* FOR MOUNT HANDLE DATABASE DEFINITION, USE:
//* KEYS(16 0) -
//* FOR LOCKING DATABASE DEFINITION, USE
//* KEYS(8 0) -
//*
//***************************************************************
//*
//*
//* CREATE A VSAM KSDS DATASET FOR THE MOUNT HANDLE DATABASE
//*
//* THIS STEP IS ONLY REQUIRED IF THE OLD MOUNT HANDLE DATASETS
//* DO NOT HAVE THE SAME RECORD SIZE DEFINITIONS AS THE CURRENT
//* DEFINITIONS OR NO MOUNT HANDLE DATASETS EXIST.
//*
//* REPLACE THE FOLLOWING FIELDS BELOW:
//*
//* MVSNFS.FHDBASE WITH DESIRE MOUNT HANDLE DATASET 1 NAME
//* xxxxxx WITH VOLUME SERIAL FOR ALLOCATION
//*
//*
//***************************************************************
//DEFINE1 EXEC PGM=IDCAMS,REGION=512K,COND=(EVEN)
//SYSPRINT DD SYSOUT=*
//SYSIN DD *
DEFINE CLUSTER ( NAME(MVSNFS.FHDBASE) -
VOL(xxxxxx) -
CYL (1 1) -
INDEXED -
REUSE -
KEYS(16 0) -
SHAREOPTIONS(1 3) -
RECSZ(1700 2000) )
LISTC ENT(MVSNFS.FHDBASE) ALL
/*
//***************************************************************
//*
//*
//* CREATE THE SECOND VSAM KSDS FOR THE MOUNT HANDLE DATABASE
//* ON A DIFFERENT VOLUME
//*
//* THIS STEP IS ONLY REQUIRED IF THE OLD MOUNT HANDLE DATASETS
//* DO NOT HAVE THE SAME RECORD SIZE DEFINITIONS AS THE CURRENT
//* DEFINITIONS OR NO MOUNT HANDLE DATASETS EXIST.
//*
//* REPLACE THE FOLLOWING FIELDS BELOW:
//*
//* MVSNFS.FHDBASE2 WITH DESIRE MOUNT HANDLE DATASET 2 NAME
//* yyyyyy WITH VOLUME SERIAL FOR ALLOCATION
//*
//*
//***************************************************************
//DEFINE2 EXEC PGM=IDCAMS,REGION=512K,COND=(EVEN)
//SYSPRINT DD SYSOUT=*
//SYSIN DD *
DEFINE CLUSTER ( NAME(MVSNFS.FHDBASE2) -
VOL(yyyyyy) -
CYL (1 1) -
INDEXED -
REUSE -
KEYS(16 0) -
SHAREOPTIONS(1 3) -
RECSZ(1700 2000) )
LISTC ENT(MVSNFS.FHDBASE2) ALL
/*
//***************************************************************
//*
//* @01A
//* COPY OLD SMALLER RECORD SIZE MOUNT HANDLE DATABASES TO THE
//* NEW LARGER RECORD SIZE MOUNT HANDLE DATABASES
//* REQUIRED AS OF Z/OS NFS 1.7
//*
//* THIS STEP IS ONLY REQUIRED IF THE OLD MOUNT HANDLE DATASETS
//* DO NOT HAVE THE SAME RECORD SIZE DEFINITIONS AS THE CURRENT
//* DEFINITIONS.
//*
//*
//* REPLACE THE FOLLOWING FIELDS BELOW:
//*
//* MVSNFS1.FHDBASE WITH OLD MOUNT HANDLE DATASET 1 NAME
//* MVSNFS1.FHDBASE2 WITH OLD MOUNT HANDLE DATASET 2 NAME
//* MVSNFS.FHDBASE WITH NEW MOUNT HANDLE DATASET 1 NAME
//* MVSNFS.FHDBASE2 WITH NEW MOUNT HANDLE DATASET 2 NAME
//*
//*
//***************************************************************
//IDCAMS1 EXEC PGM=IDCAMS,COND=(EVEN)
//SYSPRINT DD SYSOUT=*
//OLDFHDB1 DD DSN=MVSNFS1.FHDBASE,DISP=SHR
//OLDFHDB2 DD DSN=MVSNFS1.FHDBASE,DISP=SHR
//NEWFHDB1 DD DSN=MVSNFS.FHDBASE,DISP=SHR
//NEWFHDB2 DD DSN=MVSNFS.FHDBASE,DISP=SHR
//SYSIN DD *
REPRO INFILE(OLDFHDB1) OUTFILE(NEWFHDB1) REUSE
REPRO INFILE(OLDFHDB2) OUTFILE(NEWFHDB2) REUSE
/*
//***************************************************************
//*
//* @01A
//* CREATE A VSAM KSDS DATASET FOR THE LOCKING DATABASE
//*
//* THE LOCK DATA SETS MUST ALWAYS BE ALLOCATED EVEN IF NONLM
//* IS SPECIFIED IN THE SITE ATTRIBUTES.
//*
//* REPLACE THE FOLLOWING FIELDS BELOW:
//*
//* MVSNFS.LDBASE WITH DESIRE LOCK DATASET 1 NAME
//* xxxxxx WITH VOLUME SERIAL FOR ALLOCATION
//*
//*
//***************************************************************
//DEFINE3 EXEC PGM=IDCAMS,REGION=512K,COND=(EVEN)
//SYSPRINT DD SYSOUT=*
//SYSIN DD *
DEFINE CLUSTER ( NAME(MVSNFS.LDBASE) -
VOL(xxxxxx) -
CYL (1 1) -
INDEXED -
REUSE -
KEYS(8 0) -
SHAREOPTIONS(1 3) -
RECSZ(1700 2000) )
LISTC ENT(MVSNFS.LDBASE) ALL
/*
//***************************************************************
//*
//* @01A
//* CREATE THE SECOND VSAM KSDS FOR THE LOCKING DATABASE
//* ON A DIFFERENT VOLUME
//*
//* THE LOCK DATA SETS MUST ALWAYS BE ALLOCATED EVEN IF NONLM
//* IS SPECIFIED IN THE SITE ATTRIBUTES.
//*
//* REPLACE THE FOLLOWING FIELDS BELOW:
//*
//* MVSNFS.LDBASE2 WITH DESIRE LOCK DATASET 2 NAME
//* yyyyyy WITH VOLUME SERIAL FOR ALLOCATION
//*
//*
//***************************************************************
//DEFINE4 EXEC PGM=IDCAMS,REGION=512K
//SYSPRINT DD SYSOUT=*
//SYSIN DD *
DEFINE CLUSTER ( NAME(MVSNFS.LDBASE2) -
VOL(yyyyyy) -
CYL (1 1) -
INDEXED -
REUSE -
KEYS(8 0) -
SHAREOPTIONS(1 3) -
RECSZ(1700 2000) )
LISTC ENT(MVSNFS.LDBASE2) ALL
/*
//*