今年国庆扬州之行在AIX6上安装CICS7.1,耗费一周精力仍旧错误百出,最后依靠这篇步骤完成成功。贴出来让有需要的人也少走弯路吧
1. 安装环境
主机:
操作系统:AIX6100-06-01-1043,使用异步IO(无需设定,系统自动)
数据库:Oracle11.2.0.2(单机版本),安装constant client 32bit(复制为lib32目录)
编译器:XLC10.1
2. 创建cics、cicsterm和cicssm组,创建cics用户和cicssm用户添加至cics(primary group)、cicsterm和cicssm组,采用本地认证,Soft FILE size核soft CORE file size的参数值设置-1(unlimited)。
3. 如果数据库是Oracle10.2.0.1,则执行这个步骤:将root用户和cics用户添加到dba组。Oracle10.2.0.1安装完成后安装目录下的子目录的属性大都为750,库文件属性为640,导致cics用户无法访问Oracle的库文件。并且这些目录文件的属性和用户的umask设置没有关系。
4. 创建/var/cics_servers、/var/cics_regions文件系统并且mount,修改属性为cics:cics。
5. 将root添加至cics与cicsterm组并且是组的管理员,并将环境变量加入其profile文件(程序安装时自动添加到/etc/profile文件)。
export LANG=en_US
export PATH=$PATH:/usr/lpp/cics/bin:/usr/lpp/cicssm/bin
export LIBPATH=$LIBPATH:/usr/lpp/cics/lib:/usr/lpp/cicssm/lib
export NLSPATH=/usr/lpp/cics/msg/%L/%N:/usr/lpp/cics/msg/C/%N:/usr/lpp/cicssm/msg/en_US/%N:/usr/lib/nls/msg/%L/%N
6. 安装gsk(在CICS光盘的/gskit/gskta.rte)
7. 安装CICS,执行./TXSeriesV71-AIX.bin -i console
ü 选择安装时的语言环境
ü “产品简介”
ü 如果已经安装了6.X版本,确认升级到7.1版本
ü 接受软件协议,开始安装。确认/usr文件系统有足够的空间
ü 安装完成后可以选择察看“安装选择摘要”,确认安装
ü 安装完成后,可以选择察看readme文件以及安装日志(install_location/logs)。如果安装失败,在/tmp中创建日志文件
ü 不创建缺省的CICS region以及SFS server
8. 安装CICS7.1.0.2升级补丁,方法和安装CICS7.1类似。
9. 创建SFS_SERV用户,并添加至cics、cicsterm和cicssm组。这个用户名称是系统保留的SFS服务器的short name,SFS服务器根据short name名称定位使用的SFS存储。
10. 创建sfs_SFS_SERV与log_SFS_SERV逻辑卷(注:SFS服务器数据卷与日志卷名的格式为sfs_sfsUserName、log_ sfsUserName,其中sfsUserName为前面步骤创建的用户名),并输入chown SFS_SERV:cics /dev/*sfs_SFS_SERV /dev/*log_SFS_SERV命令更改其属主。sfs_sfsUserName和log_ sfsUserName大小为1G。
11. 输入/usr/lpp/cics/bin/cicsdefaultservers命令自动创建缺省的SFS服务器资源定义文件。
12. 输入cicssfscreate -v /.:/cics/sfs/sfsServerName,并将前面步骤创建的SFS_SERV用户的Home目录更改为/var/cics_servers/SSD/cics/sfs/sfsServerName,其中sfsServerName为本步中所创建的SFS服务器名。
13. 输入/usr/lpp/cics/bin/cicssfs –v /.:/cics/sfs/sfsServerName StartType=cold命令冷启动SFS Server,并输入/usr/lpp/cics/bin/sfsadmin list lvols -server /.:/cics/sfs/sfsServerName命令来验证SFS Server是否已正确启动。如果SFS Server正常运行,那么命令输出将显示为SFS创建的数据卷的名称。如果要重建SFS Server,先停止原来的服务再删除。冷启动SFS会消除在SFS数据逻辑卷上的文件。
14. 通过cicsdefault -r cicsRegionName命令创建CICS Region。如果是重建的话,首先通过ps –ef | grep cics找到所有的遗留进程,杀死这些遗留进程后再执行。
15. 输入/usr/lpp/cics/bin/cicsupdate -c rd -r cicsRegionName DefaultFileServer=/.:/cics/sfs/sfsServerName命令,将CICS Region的 DefaultFileServer 属性更改为 SFS Server的全限定名。
16. 输入cicsadd –c ld –r cicsRegionName LDName TCPService=’serviceNa’命令添加配置一个新的LD,并在/etc/services文件中增加相应servieName的设置,只要增加TCP端口,缺省为1435。
17. 创建Switch Load File,配置XAD,连接数据库。
ü 保证已安装支持版本的C编译器
ü 保证已安装Oracle客户端与proc编译器
ü 保证操作系统中已设置ORACLE_HOME(对应于本地客户端软件)环境变量的值,并已完成TNS的配置,可通过sqlplus连接至Oracle数据库;
ü 将/usr/lpp/cics/examples/RM_support/Oracle下的oracle1pc.pc与oracle1pc.mk文件复制至/var/cics_regions/cicsRegionName/bin目录下;
ü 在该目录下根据Oracle版本通过make –f oracle1pc.mk oracleversion命令生成和数据库的链接程序(Swith Load File)——oracle1pc。
ü 输入cicsadd –c xad –r cicsRegionName XADName SwitchLoadFile=’fileName’ XAOpen=’Oracle_XA+Acc=P/oracleUserName/oracleUserPassword+SqlNet=oracleTNSName+SesTm=35+LogDir=/tmp+DbgFl=1’命令添加配置一个新的XAD。
ü 赋予用户权限,grant select on dba_pending_transactions to oracleUserName;
18. 在/var/cics_regions/cicsRegionName/environment文件中,根据数据库的配置情况设置ORACLE_SID(对应于目标数据库)、ORACLE_HOME(对应于本地客户端软件)、NLS_LANG环境变量的值,也可以设置CICS_XP_RECV_TIMEOUT的值。
19. 通过/usr/lpp/cics/bin/cicscp –v start region cicsRegionName StartType=cold命令冷启动Region,并通过/usr/lpp/cics/bin/cicstail –r cicsRegionName命令来验证CICS是否已成功启动。
20. 一些命令
mkgroup -’A’ id=’400′ cics
mkgroup -’A’ id=’401′ cicsterm
mkgroup -’A’ id=’402′ cicssm
mkuser id=’400′ pgrp=’cics’ groups=’cicsterm,cicssm’ cics
mkuser id=’401′ pgrp=’cics’ groups=’cicsterm,cicssm’ cicssm
chuser fsize=’-1′ core=’-1′ cics
chuser fsize=’-1′ core=’-1′ cicssm
chgroup users=’oracle,root,cics’ dba
mklv -t jfs2 -y lvcicssfs -c 2 rootvg 8
mklv -t jfs2 -y lvcicsreg -c 2 rootvg 8
crfs -v jfs2 -d’lvcicssfs’ -m’/var/cics_servers’ -A yes -p rw -a agblksize=’4096′
crfs -v jfs2 -d’lvcicsreg’ -m’/var/cics_regions’ -A yes -p rw -a agblksize=’4096′
mount /var/cics_servers
mount /var/cics_regions
df -k
chown cics:cics /var/cics_servers
chown cics:cics /var/cics_regions
chgroup users=’cics,cicssm,root’ cics
chgroup users=’cics,cicssm,root’ cicsterm
export LANG=en_US
export PATH=$PATH:/usr/lpp/cics/bin:/usr/lpp/cicssm/bin
export LIBPATH=$LIBPATH:/usr/lpp/cics/lib:/usr/lpp/cicssm/lib
export NLSPATH=/usr/lpp/cics/msg/%L/%N:/usr/lpp/cics/msg/C/%N:/usr/lpp/cicssm/msg/en_US/%N:/usr/lib/nls/msg/%L/%N
export PATH=$PATH:/usr/vac/bin:/usr/vacpp/bin
mkuser id=’402′ pgrp=’cics’ groups=’cicsterm,cicssm’ SFS_SERV
mklv -t raw -y sfs_SFS_SERV -c 2 rootvg 8
mklv -t raw -y log_SFS_SERV -c 2 rootvg 8
chown SFS_SERV:cics /dev/*sfs_SFS_SERV /dev/*log_SFS_SERV
/usr/lpp/cics/bin/cicsdefaultservers
cicssfscreate -v /.:/cics/sfs/sfsServerName
chuser home=’/var/cics_servers/SSD/cics/sfs/sfsServerName‘ SFS_SERV
chown SFS_SERV:cics /var/cics_servers/SSD/cics/sfs/sfsServerName
/usr/lpp/cics/bin/cicssfs -v /.:/cics/sfs/sfsServerName StartType=cold
/usr/lpp/encina/bin/sfsadmin list lvols -server /.:/cics/sfs/sfsServerName
cicsdefault -r test
cicsupdate -c rd -r test DefaultFileServer=/.:/cics/sfs/sfsServerName
cicsadd -c ld -r test ldtest TCPService=’ldtest’
最及时的声音