[转帖]如何将Logic Dump保存在本地PC,以便将来在另一台Mainframe上Restore?

[问题描述]
在一台Mainframe上使用Logic Dump的方式保存一些数据集,下载到本地PC上,以便日后上传到其他Mainframe上进行Restore; 常规下载上传方法无法在其他Mainframe上正常Restore先前保存的数据集.本篇文章给出一个可行的解决
方法.

[解答]
如果被保存的Logic Dump将来在同一台Mainframe上Restore,按照常规方法(FTP或PCOMM)下载
到PC上是没有问题的.如果将来要在其他Mainframe上Restore,使用常规方式下载然后在上传到另一台Mainframe上,Restore的时候会出现如下错误提示:

INVALID INPUT ON DDNAME TAPEI, INPUT DATA SET NOT PRODUCED BY DFDSS OR DFSMSDSS

要在另一台Mainframe上Restore成功可以遵循如下流程:
1.将要保存的数据集制作成Logic Dump
//LGDUMP JOB MSGLEVEL=(1,1),MSGCLASS=X,NOTIFY=&SYSUID,REGION=0M
//DUMPDS EXEC PGM=ADRDSSU
//SYSPRINT DD SYSOUT=*
//TAPE DD UNIT=3390,VOL=SER=Z6IMS1,
// DISP=(NEW,KEEP),DSN=TSCLJ.LGDUMP.D60404,
// SPACE=(CYL,(10,20),RLSE)
//SYSIN DD *
DUMP DATASET( -
INCLUDE(TSCLJ.PROG.**, -
TSCLJ.TRAINDS.JCL -
) -
) -
SPHERE TOL(ENQF) -
OUTDDNAME(TAPE)
/*
2.将制作好的Dump数据集Catalog(ISPF面板使用'C')
3.下载Dump到本地PC上
  (1)Windows下输入命令FTP ip_address
  (2)输入用户名和密码
  (3)依次输入以下命令:
     bin           -->以Binary方式下载
     quote stru r  -->告诉IBM FTP Server将文件进行特殊编码,以便加入end-of-record指示标志
  (4)使用GET命令下载DUMP
4.上传Dump到另一台Mainframe上
  (1)Windows下输入命令FTP another_ip_address
  (2)输入用户名和密码
  (3)依次输入以下命令:
     bin
     quote stru r
     quote site recfm=u lrecl=0 blksize=27998 pri=10 sec=20 cylinders                 
  (4)使用PUT命令上传DUMP
5.Restore上传的DUMP
//RESTDSN JOB ,,MSGLEVEL=(1,1),CLASS=A,MSGCLASS=X,NOTIFY=&SYSUID,
// REGION=4096K
//*
//COPY EXEC PGM=ADRDSSU
//SYSPRINT DD SYSOUT=*
//TAPEI DD DSN=BJSP02.LGDUMP.D60404,UNIT=3390,VOL=SER=BPPM03,
// DISP=(OLD,KEEP)
//DASDO DD UNIT=3390,VOL=SER=BPPM03,DISP=SHR
//SYSIN DD *
RESTORE DATASET(INCLUDE(TSCLJ.PROG.**, -
TSCLJ.TRAINDS.JCL))-
OUTDD(DASDO) INDD(TAPEI) -
CATALOG -
NULLMGMTCLAS -
NULLSTORCLAS -
RENAMEU(BJSP02) -
TOL(ENQF)
/*

[总结]
此问题的关键是设置下载和上传时候使用命令: quote stru r   

PS:在使用FTP上传下载的时候指定一下参数,参数的取值为DUMP数据集的参数

quote site lrecl=8000 blksize=27998 recfm=u 
quote site pri=35 sec=500 cyl

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章