Вы находитесь на странице: 1из 7

II13354: MOVING ICF CATALOGS - STEP BY STEP SCENARIOS,

INCLUDING SHARED CATALOGS


Document
information
Product categories:

Software

Operating System

z/OS family

APARs - OS/390
environment
Subscribe to this APAR
By subscribing, you receive periodic emails alerting you to the status of the Operating system(s):
APAR, along with a link to the fix after it becomes available. You can track
this item individually or track all items by product. MVS, OS/390, z/OS
Notify me when this APAR changes.
Software version:
Notify me when an APAR for this component changes.
001
Subscribe

Reference #:

II13354
APAR status
IBM Group:
INTRAN
IBM Server Group
Error description
This informational apar provides step by step procedures Modified
for date:
moving catalogs from one volume to another. This apar further
2010-07-06
expands on the examples provided in the DFSMS manual "Managing
Catalogs" including considerations for shared catalogs.
These are also the same steps that should be used when reorging
a catalog. The only difference between a reorg and a move is the
volume the catalog is on at the end of the process.
.
When moving a catalog there are slightly different processes
depending on whether the catalog is on a single system, or is
shared across systems. This will cover three common system
configurations. The first configuration is a single system, the
second is multiple systems with each system having it's own
master catalog and the third is multiple systems with a single
shared master catalog.
.
Before moving any catalog always:
1. Ensure you have a good backup of a valid catalog. Use of
IDCAMS DIAGNOSE and EXAMINE on the catalog and correcting
any errors before taking the backup will ensure you can
fall back to a valid backup if there are problems. Having
more than one copy is always a good idea in case one copy
becomes damaged or lost. This backup can be a full volume
dump of the volume the catalog is on, a DFDSS backup or
IDCAMS EXPORT. Having all three gives you more options if
you need to back out of the catalog move.
2. Ensure through the use of IDCAMS DIAGNOSE and EXAMINE that
the catalog does not have errors.
3. An IDCAMS LISTCAT ALL of the catalog to be moved is always
a good idea in case there are problems. Since this may
produce a large volume of output you may wish to consider
redirecting the output to a dataset either by pointing the
SYSPRINT DD statement to a dataset, or by use of the OFILE
keyword on the LISTCAT command.
4. If you are moving a catalog that is shared across systems,
a LISTCAT of the master catalog with ALL keyword is needed
to enable a redefine of any aliases that point to the user
catalog that is being moved, unless you already have a job
setup to define the aliases. If you already have a job
verify that it is current by comparing the LISTCAT output
to the job.
Note: EXPORT DISCONNECT is recommended in several of the
examples but it does delete the alias entries in the ucat
connector record making a redefine of them necessary.
Instead, you can use IMPORT CONNECT w/ALIAS on the systems
other than the one you are working with the catalog on.

5. Quiesce all activity against the catalog that is to be


moved.
.
The scenarios here assume that the following four steps are
are run as the FIRST part of the move process and if there are
errors, these are corrected before proceeding with moving the
catalog.
//DIAGNOSE EXEC PGM=IDCAMS
//SYSPRINT DD SYSOUT=*
//DIAGDD DD DISP=SHR,DSN=your.user.catalog
//SYSIN DD *
DIAGNOSE ICFCATALOG INFILE(DIAGDD)
//EXAMINE1 EXEC PGM=IDCAMS
//SYSPRINT DD SYSOUT=*
//SYSIN DD *
EXAMINE NAME(your.user.catalog) -
INDEXTEST NODATATEST ERRORLIMIT(1000)
//EXAMINE2 EXEC PGM=IDCAMS
//SYSPRINT DD SYSOUT=*
//SYSIN DD *
EXAMINE NAME(your.user.catalog) -
NOINDEXTEST DATATEST ERRORLIMIT(1000)
//LISTCAT EXEC PGM=IDCAMS
//SYSPRINT DD SYSOUT=*
//SYSIN DD *
LISTCAT CAT(your.user.catalog) ALL
.
The scenarios here assume that the following four steps are
are run as the LAST part of the move process and if there are
errors, these are corrected before unlocking the catalog.
//DIAGNOSE EXEC PGM=IDCAMS
//SYSPRINT DD SYSOUT=*
//DIAGDD DD DISP=SHR,DSN=your.user.catalog
//SYSIN DD *
DIAGNOSE ICFCATALOG INFILE(DIAGDD)
//EXAMINE1 EXEC PGM=IDCAMS
//SYSPRINT DD SYSOUT=*
//SYSIN DD *
EXAMINE NAME(your.user.catalog) -
INDEXTEST NODATATEST ERRORLIMIT(1000)
//EXAMINE2 EXEC PGM=IDCAMS
//SYSPRINT DD SYSOUT=*
//SYSIN DD *
EXAMINE NAME(your.user.catalog) -
NOINDEXTEST DATATEST ERRORLIMIT(1000)
//LISTCAT EXEC PGM=IDCAMS
//SYSPRINT DD SYSOUT=*
//SYSIN DD *
LISTCAT CAT(your.user.catalog) ALL
.
Single system move of catalog OR move of catalog shared across
systems with single shared master catalog.
.
1. Lock the catalog (must have IGG.CATLOCK authority)
//LOCKCAT EXEC PGM=IDCAMS
//SYSPRINT DD SYSOUT=*
//SYSIN DD *
ALTER your.user.catalog LOCK
2. Issue the following command on each system that uses the
catalog that you are moving if you use VLF for catalogs:
F CATALOG,NOVLF(your.user.catalog)
NOTE: The next command is optional and only relevant if you
using ECS (Enhanced Catalog Sharing)
F CATALOG,ECSHR(REMOVE,your.user.catalog)
3. Export the catalog (considering doing this twice to have a
second copy). See info apar II10752 item 16 for alternative
JCL for EXPORT that improves the performance of EXPORT.
//EXPRTTMP EXEC PGM=IDCAMS
//SYSPRINT DD SYSOUT=*
//EXPDD DD DSN=CATBACK.your.user.catalog,UNIT=SYSDA,
// DISP=(NEW,CATLG,DELETE) ... other JCL parameters as needed
//SYSIN DD *
EXPORT your.user.catalog -
OUTFILE(EXPDD) TEMPORARY
4. If you are happy with current catalog attributes such as
cisize, then you can use the following else skip to step 5
//NEWVOL EXEC PGM=IDCAMS
//SYSPRINT DD SYSOUT=*
//SYSIN DD *
IMPORT INDATASET(CATBACK.your.user.catalog) -
OUTDATASET(your.user.catalog) -
OBJECTS((your.user.catalog -
VOLUMES(NEWVOL))) -
ALIAS - /* Include the aliases */
LOCK /* Be sure to include this */
.
If you ran the above step, then skip to step 8

5. If you are taking advantage of the move to update catalog


attributes then delete the catalog with the recovery option
//DELCAT EXEC PGM=IDCAMS
//SYSPRINT DD SYSOUT=*
//SYSIN DD *
DELETE your.user.catalog -
RECOVERY - /* Be sure this is specified */
USERCATALOG
6. Now define the catalog with the updated attributes on the new
volume.
//DEFCAT EXEC PGM=IDCAMS
//SYSPRINT DD SYSOUT=*
//SYSIN DD *
DEFINE USERCATALOG -
(NAME(your.user.catalog) -
VOLUME(newvol) - /* New volume */
CYL(20,5) - /* Allow catalog to extend */
ICFCATALOG -
SHAREOPTIONS(3,4) - /* Required if sharing catalog */
STRNO(7) - /* Minimum is 3 */
NOIMBED - /* Only if OS/390 2.9 or below */
NOREPLICATE - /* Only if OS/390 2.9 or below */
LOCK - /* Be sure and define as locked */
) -
DATA(CONTROLINTERVALSIZE(4096)) -
INDEX(CONTROLINTERVALSIZE(4096)) /* recommended size */
.
7. Now import the export copy into the newly defined catalog
//NEWVOL2 EXEC PGM=IDCAMS
//SYSPRINT DD SYSOUT=*
//SYSIN DD *
IMPORT INDATASET(CATBACK.your.user.catalog) -
OUTDATASET(your.user.catalog) -
INTOEMPTY -
ALIAS - /* Include the aliases */
LOCK /* Leave catalog locked */
.
8. At this point run the four steps listed above to ensure there
are not problems with the moved catalog. After those four
have run and the output verified, unlock the catalog
//UNLOCK EXEC PGM=IDCAMS
//SYSPRINT DD SYSOUT=*
//SYSIN DD *
ALTER your.user.catalog UNLOCK
.
Move of catalog shared across systems with unique master
catalogs for each system.
.
A. Lock the catalog
//LOCKCAT EXEC PGM=IDCAMS
//SYSPRINT DD SYSOUT=*
//SYSIN DD *
ALTER your.user.catalog LOCK(must have IGG.CATLOCK authority)
.
B. Issue the following command on each system that uses the
catalog that you are moving:
F CATALOG,NOVLF(your.catalog.name)
NOTE: The next command is optional and only relevant if you
using ECS (Enhanced Catalog Sharing)
F CATALOG,ECSHR(REMOVE,your.user.catalog)
C. Export disconnect the catalog from all systems OTHER than the
one you are running the catalog move on. The syntax used here
assumes that this will be run as a job on each system sharing
the catalog OTHER than the one you are running the catalog
move on.
//EXPDISC EXEC PGM=IDCAMS
//SYSPRINT DD SYSOUT=*
//SYSIN DD *
EXPORT your.user.catalog DISCONNECT
.
Note: you can skip this step if you are using IMPORT CONNECT
w/ the ALIAS parameter on the other sharing LPARs in step J.
.
D. Export the catalog (considering doing this twice to have a
second copy). See info apar II10752 item 16 for alternative
JCL for EXPORT that improves the performance of EXPORT.
//EXPRTTMP EXEC PGM=IDCAMS
//SYSPRINT DD SYSOUT=*
//EXPDD DD DSN=CATBACK.your.user.catalog,UNIT=SYSDA,
// DISP=(NEW,CATLG,DELETE) ... other JCL parameters as needed
//SYSIN DD *
EXPORT your.user.catalog -
OUTFILE(EXPDD) TEMPORARY
.
E. If you are happy with current catalog attributes such as
cisize, then you can use the following else skip to step F
//NEWVOL EXEC PGM=IDCAMS
//SYSPRINT DD SYSOUT=*
//SYSIN DD *
IMPORT INDATASET(CATBACK.your.user.catalog) -
OUTDATASET(your.user.catalog) -
OBJECTS((your.user.catalog -
VOLUMES(newvol))) -
ALIAS - /* Include the aliases */
LOCK /* Be sure to include this */
.
If you ran the above step, then skip to step I

F. If you are taking advantage of the move to update catalog


attributes then delete the catalog with the recovery option
//DELCAT EXEC PGM=IDCAMS
//SYSPRINT DD SYSOUT=*
//SYSIN DD *
DELETE your.user.catalog -
RECOVERY - /* Be sure this is specified */
USERCATALOG
.
G. Now define the catalog with the updated attributes on the new
volume.
//DEFCAT EXEC PGM=IDCAMS
//SYSPRINT DD SYSOUT=*
//SYSIN DD *
DEFINE USERCATALOG -
(NAME(your.user.catalog) -
VOLUME(newvol) - /* New volume */
CYL(20,5) - /* Allow catalog to extend */
ICFCATALOG -
SHAREOPTIONS(3,4) - /* Required if sharing catalog */
STRNO(7) - /* Minimum is 3 */
NOIMBED - /* Only if OS/390 2.9 or below */
NOREPLICATE - /* Only if OS/390 2.9 or below */
LOCK - /* Be sure and define as locked */
) -
DATA(CONTROLINTERVALSIZE(4096)) -
INDEX(CONTROLINTERVALSIZE(4096)) /* recommended size */
.
H. Now import the export copy into the newly defined catalog
//NEWVOL2 EXEC PGM=IDCAMS
//SYSPRINT DD SYSOUT=*
//SYSIN DD *
IMPORT INDATASET(CATBACK.your.user.catalog) -
OUTDATASET(your.user.catalog) -
INTOEMPTY -
ALIAS - /* Include the aliases */
LOCK /* Leave catalog locked */
.
I. At this point the catalog on the system you have run this on
is ready to be used (other than still being locked), but the
aliases that point to this catalog on the other systems have
been deleted and need to be redefined. Before doing that on
the other systems, this is a good time to run the four steps
listed above to ensure that there are not problems with the
moved catalog. After doing you will need to IMPORT CONNECT
on the OTHER systems.
//IMPRTCON EXEC PGM=IDCAMS
//SYSPRINT DD SYSOUT=*
//SYSIN DD *
IMPORT CONNECT -
OBJECTS((your.user.catalog) -
DEVICETYPE(3390) -
VOLUMES(newvol)))
.
J. Define the aliases for the catalog on the other systems
or use IDCAMS IMPORT CONNECT w/ALIAS to update the volser
in the ucat connector record on all other sharing systems.
K. Now you can unlock the catalog
//UNLOCK EXEC PGM=IDCAMS
//SYSPRINT DD SYSOUT=*
//SYSIN DD *
ALTER your.user.catalog UNLOCK

Local fix
Problem summary
Problem conclusion
Temporary fix
Comments
APAR Information
APAR number
II13354

Reported component name


V2 LIB INFO ITE

Reported component ID
INFOV2LIB

Reported release
001

Status
INTRAN

PE
NoPE

HIPER
NoHIPER

Special Attention
NoSpecatt

Submitted date
2002-07-16

Closed date

Last modified date


2010-07-06

APAR is sysrouted FROM one or more of the following:

APAR is sysrouted TO one or more of the following:

Fix information
Applicable component levels
Copyright and trademark information
IBM, the IBM logo and ibm.com are trademarks of International Business
Machines Corp., registered in many jurisdictions worldwide. Other product and
service names might be trademarks of IBM or other companies. A current list
of IBM trademarks is available on the Web at "Copyright and trademark
information" at www.ibm.com/legal/copytrade.shtml.

Вам также может понравиться