DB2 8.1HACMP环境双实例双库互备调试
硬件需求: Sj|i1 2 1、需要java131 64bit版本,在db2光盘盒中有单独cd介质提供。 ik*kMp:Nl O_p/-]jZ 2、java 131 64bit需要devices.isa_sio.chrp.ecp.rte 5.1.0.10(aix安装盘cd1中) *Tgkfth6 1vQH?Z7$ 3、DB2 + HACMP 安装注意事项。 |*P;<Wp [
zGT; 4、两台主机分别跑不同的DB2 instance, +3>Jphb; 其它需求: ,"so }'G 在用db2setup安装时两台主机需要指定不同的用户、ID; wgQl" 8Hy9:p(T:. 该项目中间是db2inst1 ,db2inst2。用户、组和ID的对应号如下: 27Ms3&9[` 7p&55L6x/6 用户 用户ID 组 组ID 1ou^2fJ q
xu`o/Z db2inst1 2000 db2iadm1 500 oxgU.c2s D(;g].5g. db2fenc1 2001 db2fadm1 501 ,c~#E)gOss N_L](>)<i db2as1 2005 db2grp1 101 U5p=4
RL k6#*d8 db2inst2 2002 db2iadm2 502 [0:'WaCw D~;YuQS+S db2fenc2 2003 db2fadm2 503 'a#]2(n& }_+bHC db2as2 2004 db2grp2 102 )$YjF9C3 g~7UE~f; 在对方机器上不存在的组和用户,如ibmsvr1 上的db2inst2用户,db2iadm2用户,db2as1用户,需要手工建立,需要保证ID号相同。(一定要确定两台机器的gid,uid相同,如上表所示)放置实例的位置要建立文件系统 (如/home/db2inst1 ); +opG{<h$ ! r=SUA 该项目中间的划分如下: U*R9PKux%^ C6Y)]|+:OM mzvg(raid1) S4.T FMy 48!N lv name mount point 用途 z cz~t s <P t!I! db2inst1lv /home/db2inst1 512MB db2inst1实例文件 N0
J+i ??^L]O- db2fenc1lv /home/db2fenc1 256MB #TTI:
GTd4^.C3` db2as1lv /home/db2as1 256MB db2DAS相关文件存储目录 N7qagZjN X,Lvr{: db1lv /db1 2G db2inst1数据库文件 2
.1($3}3 ;ej_?:a zyvg(raid5) b4yUlJ}M <0thc lv name mount point ^//VEh SP$Ed2!p`a db2inst1lv /home/db2inst2 db2inst2实例文件 Ob{'qKw sG+Q&^8 db2fenc1lv /home/db2fenc2 6c3Z |Hx, l^u3 \J^< db2as1lv /home/db2as2 db2DAS相关文件存储目录 AA\cG;J% 2Rg+5J"c9 db2lv /db2 db2inst2数据库文件 z[l'33 0 !JUf_Z 具体划分方法请参考aix系统相关资料。 " ^S8M <}dioM) 再执行脚本db2chown将相关路径的权限设定到指定用户。 t%#h2yC/ k}
Y_g] db2chown的内容如下: I`cnsxM (9C0\}E3$ chown -R db2inst1:db2iadm1 /home/db2inst1 gVx17)Z :zeQ@$r chown -R db2inst2:db2iadm2 /home/db2inst2 fHYNa 0>.!3V1p chown -R db2fenc1:db2fadm1 /home/db2fenc1 msm2Ki 1[.Ab^ chown -R db2fenc2:db2fadm2 /home/db2fenc2 82xWWT vI ('1IMo8^ chown -R db2as1:db2grp1 /home/db2as1 m6-Ap #C,~0hrp chown -R db2as2:db2grp2 /home/db2as2 *kmHD# Z
{m}#Y chown -R db2inst1:db2iadm1 /db1 yIzR&cx\[B BuC{`Y{= chown -R db2inst2:db2iadm2 /db2 3Q@EVK^ l,,BMgt
x db2setup安装时修改两边指定不同的服务名、端口号, #/|};G6p 0M\AF] 该项目中间设定的是db2inst1 50000/tcp、db2inst2 50001/tcp。 N}D/W5} Gx/cI4o( 同样的,在对方机器上面不存在的端口,需要手工添加。 V )q5:. N<=Iw|g 添加到/etc/services文件中,在后面加上端口号就可以了。 T}v04cIQ]y w> 最后需要保证两台设备的id号相同。在/etc/services文件中应该包含下列语句。 &OeHi"UE=J 31)V{A DB2 7.2版本 ;i Dkh Yk-Dv?TF db2cdb2inst1 50000/tcp # Connection port for DB2 instance db2inst1 TqH%5!X:] ZE%5.an8k db2idb2inst1 50001/tcp # Interrupt port for DB2 instance db2inst1 /n`M3UIr 'd$'BTki db2cdb2inst2 50050/tcp # ?^8KP"af=
GkBl xI db2idb2inst2 50051/tcp # e
rdwtM` usD0g\/\. DB2 8.1版本 Yq
wK)@ 5
+nSX%" DB2_db2inst1 60010/tcp }}]w* [qels<e DB2_db2inst1_END 60013/tcp g^j|!j\@ g; H~">3\ db2c_db2inst1 50000/tcp sb@%B)*x ~m[,=B&U` db2c_db2inst2 50001/tcp &l$e.]$z CK-" EQC DB2_db2inst2 60000/tcp nb3ok9p, Afesq2
& DB2_db2inst2_END 60003/tcp E@uNJJ+it (yf# 上面以DB2_开头的端口属于DB2 8.1中FCM(快速管理通讯程序)使用的端口。 eGV&l$N 5u)G&{u6 端口在安装时默认指定的是60000开始的连续4个端口。 bt>8pLo> ..Q=kgi-U 在对方机器上面需要手工添加自身实例的FCM端口, Um)&oy
r`67"
注意两台机器的端口针对于该机主实例来说要是唯一的。 tDw[lGy 6@:=Kr=8 也就是说两个节点中间/etc/services中间的内容要一致。 b6{<V3X qc{z=]1 DB2 7.2版本 9f :-<o<h vz0
\t7, HA 脚本 可以直接用su - instance-user-name db2start / su - instance-user--name db2stop 即可。 g};Mm_ws X}Jpy; 该项目中间的启停脚本使用的就是本目录中间的四个文件。 D%0<5x= +v.UfhB:m? 文件名为db2hastart1,db2hastop1, ha script for db2inst1 UWM/ hB zOyEl: db2hastart2,db2hastop2, ha script for db2inst2 jdO$zVl9F 7[2km DB2 8.1版本 X'w1j 55$ ^8JbD>]0 由于存在db2nodes.cfg文件的问题,所以,上面7.2版本的不再适用。 <R:4QR +x P'nIlDr 需要建立db2nodes.cfg文件的副本,存放在本地硬盘上,文件名称一致,但内容不同。 lWv:`A% |~na#2qpZ db2nodes.cfg.bak.1文件在ibmsvr1上的内容为: Z(no:
k8i XU"}`{ 0 ibmsvr1 0 ibmsvr1_svc -TC4F&bK I4eh7i` db2nodes.cfg.bak.2文件在ibmsvr1上的内容为: a+{gAR
;jq]km 0 ibmsvr1 0 ibmsvr2_svc )>ZFJZ
, Vm*qfJt db2nodes.cfg.bak.1文件在ibmsvr2上的内容为:
/6q 2'8
k%` 0 ibmsvr2 0 ibmsvr1_svc {K6z+Wm {^"[nL>{L db2nodes.cfg.bak.2文件在ibmsvr2上的内容为: |.w$urm FV @Ss%u 0 ibmsvr2 0 ibmsvr2_svc g$<#8BHfN
ckq 3:9L9 ha的相关启停脚本如下: P\}cum" AFyqCwEb db2inst1.start.sh T,w|0: GHfo&s cp /usr/dbsh/db2nodes.cfg.bak.1 /home/db2inst1/sqllib/db2nodes.cfg H de9>vX %+ik0]/t su - db2as1 -c 'db2admin start' 2:K[C>75 [c)Hd#*<l su - db2inst1 -c db2start 7?EB\n": ibxD89
db2inst1.stop.sh x4fJaq" ')V3r f`T su - db2as1 -c 'db2admin stop' |C\8C)L?~ Tj#}1&/ su - db2inst1 -c 'db2stop force' &=%c*7T [EH"#5 db2inst2用户的脚本就是将db2inst1替换成db2inst2即可。 =!=D,.A?1 ZoL&qt4f 将启停脚本加入到ha的应用服务器中间就可以了。脚本会自动启动db2相关实例。
|