Hostname |
hao111 |
localhost |
数据库实例名 |
cms |
|
端口 |
50001 |
|
根目录 |
/home/cms/db2fs |
|
在线日志路径 |
/home/cms/db2log/trans |
|
归档日志路径 |
/home/cms/db2log/arch |
|
db2 hadr service port |
db2h_cmsinst1 70000/tcp |
|
IP |
192.168.56.102 primary-node1 192.168.56.104 primary-node2 |
192.168.56.103 standby-node1 192.168.56.105 standby-node2 |
|
|
|
[root@hao111 ~]# mount -o loop -t iso9660 db29.7_07_linux64.iso /mnt/db2rom/
[root@hao111 ~]# cd /mnt/db2rom/
[root@hao111 db2rom]# ./db2_install
WARNING:
DBT3534W The db2prereqcheck utility determined that ASLR is set to ON and that this could cause issues with some tools.
WARNING:
The 32-bit library file libpam.so is not found on the system.
Default directory for installation of products - /opt/ibm/db2/V9.7
***********************************************************
Do you want to choose a different directory to install [yes/no] ?
no
[root@hao111 ~]# groupadd -g 2000 db2iadm1
[root@hao111 ~]# groupadd -g 2001 db2fadm1
[root@hao111 ~]# useradd -m -g db2iadm1 -d /home/db2inst1 db2inst1
[root@hao111 ~]# useradd -m -g db2fadm1 -d /home/db2fenc1 db2fenc1
[root@hao111 ~]# useradd -m -g db2iadm1 -d /home/cms cms
[root@hao111 ~]# useradd -m -g db2iadm1 -d /home/scms scms
[root@hao111 ~]# passwd db2inst1
[root@hao111 ~]# passwd db2fenc1
[root@hao111 ~]# passwd cms
[root@hao111 ~]# passwd scms
[root@hao111 ~]# cd /opt/ibm/db2/V9.7/instance/
[root@hao111 instance]# ./db2icrt -p 50000 -u db2fenc1 db2inst1
DBI1070I Program db2icrt completed successfully.
[root@hao111 instance]# ./db2icrt -p 50001 -u db2fenc1 cms
DBI1070I Program db2icrt completed successfully.
[root@hao111 instance]# ./db2icrt -p 50002 -u db2fenc1 scms
DBI1070I Program db2icrt completed successfully.
[root@hao111 instance]# su - db2inst1
[db2inst1@hao111 ~]$ db2licm -l
[db2inst1@hao111 ~]$ exitlogout
[root@hao111 instance]# cd /opt/ibm/db2/V9.7/adm/
[root@hao111 adm]# ./db2licm -a /root/db2ese_c.lic
LIC1402I License added successfully.
$ db2start
$ db2 create db cms automatic storage yes on /home/cms/db2fs using codeset GBK territory CN
$ vi /etc/sysctl.conf
----以内存为16GB的配置例子
----如果大于16GB,SEMMSL、SEMMNS、SEMOPM、msgmax和msgmnb保持不变
----shmmni、shmmax、shmall、SEMMNI和msgmni的设置成比例增大,见下面加黑内容
kernel.msgmnb = 65536
kernel.msgmax = 65536
kernel.msgmni=1638
kernel.shmmax = 68719476736
kernel.shmmni=4096
kernel.shmall = 4294967296
----kernel.sem= <SEMMSL> <SEMMNS> <SEMOPM> <SEMMNI>
kernel.sem=250 25600 32 4096
# sysctl -p ----使设置生效
# ipcs -l ----显示当前内核参数
# vi /etc/security/limits.conf ----根据实际情况,酌情修改
# vi /etc/hosts
$ db2set DB2_USE_IOCP=OFF
$ db2set DB2COMM=tcpip
$ db2set DB2CODEPAGE=1386
$ db2set DB2AUTOSTART=YES
$ db2set DB2_HADR_ROS=ON
$ db2set DB2_STANDBY_ISO=UR
$ db2 update dbm cfg using DIAGLEVEL 3
$ db2 update dbm cfg using DIAGSIZE 1024
$ db2 update dbm cfg using SHEAPTHRES 0 ----SHEAPTHRES的值为0时,使用共享排序
connect to cms;
update db cfg using NUM_IOCLEANERS AUTOMATIC;
update db cfg using NUM_IOSERVERS AUTOMATIC;
connect to cms;
update db cfg using MAXLOCKS 40;
update db cfg using LOCKLIST 20480;
update db cfg using LOCKTIMEOUT 30;
connect to cms;
update db cfg using LOGBUFSZ 5120;
update db cfg using LOGFILSIZ 51200;
update db cfg using LOGPRIMARY 50;
update db cfg using LOGSECOND 80;
update db cfg using SOFTMAX 100;
update db cfg using TRACKMOD ON;
update db cfg using NEWLOGPATH /home/cms/db2log/trans; ----事务日志的存储路径
update db cfg using LOGARCHMETH1 DISK:/home/cms/db2log/arch;
connect to cms;
update db cfg using CATALOGCACHE_SZ AUTOMATIC;
update db cfg using PCKCACHESC AUTOMATIC;
update db cfg using STMTHEAP AUTOMATIC;
update db cfg using APPLHEAPSZ AUTOMATIC;
update db cfg using STAT_HEAP_SZ AUTOMATIC;
update db cfg using SHEAPTHRES_SHR AUTOMATIC;
update db cfg using SORTHEAP AUTOMATIC;
$ db2 disconnect all
$ db2stop
$ db2start
$ db2 backup db cms online to /home/cms/111 compress
$ db2 list history backup all for cms
$ db2ckbkp -h CMS.0.cms.NODE0000.CATN0000.20140125044402.001
$ db2 "restore db cms from . taken at 20140125044402 into cms logtarget /home/cms/db2fs redirect generate script cms.clp"
----“logtarget /home/db2fs ”字段,表示rollforward时的生成的日志路径
$ cd /home/cms
$ mkdir db2log
$ cd db2log
$ mkdir arch
$ mkdir trans
$ scp CMS.0.cms.NODE0000.CATN0000.20140125044402.001 cms@192.168.56.103:~
$ scp cms.clp cms@192.168.56.103:~
$ db2 -tvf cms.clp ---- ‘cms.clp’文件,需要根据实际情况,酌情修改。
# vi /etc/services
键入“shift+G”到最后一行
加入:db2h_cmsinst1 70000/tcp #db2 hadr service port
保存,退出!
$ vi hadr1.sh
db2 update db cfg for cms using hadr_local_host primary-node2;
db2 update db cfg for cms using hadr_local_svc db2h_cmsinst1;
db2 update db cfg for cms using hadr_remote_host standby-node2;
db2 update db cfg for cms using hadr_remote_svc db2h_cmsinst1;
db2 update db cfg for cms using hadr_remote_inst cms;
db2 update db cfg for cms using logindexbuild on;
db2 update db cfg for cms using indexrec restart;
$ chmod +x hadr1.sh
$ ./hadr1.sh
$ vi hadr2.sh
db2 update db cfg for cms using hadr_local_host standby-node2;
db2 update db cfg for cms using hadr_local_svc db2h_cmsinst1;
db2 update db cfg for cms using hadr_remote_host primary-node2;
db2 update db cfg for cms using hadr_remote_svc db2h_cmsinst1;
db2 update db cfg for cms using hadr_remote_inst cms;
db2 update db cfg for cms using logindexbuild on;
db2 update db cfg for cms using indexrec restart;
$ chmod +x hadr2.sh
$ ./hadr2.sh
$ db2start
$ db2 start hadr on db cms as standby
$ db2start
$ db2 start hadr on db cms as primary
$ db2pd -d cms -hadr
在从节点上执行“takeover hadr”命令:
$ db2 takeover hadr on database cms
原文:http://blog.csdn.net/a3470194/article/details/19415281