HADR的搭建步骤指南
本篇内容主要讲解“HADR的搭建步骤指南”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“HADR的搭建步骤指南”吧!
1 背景和需求
银行的数据库大部分是HA+HADR环境,一般的模式为:上海2台机器做HA,同时是HADR的主机;深圳2台机器做HA,同时是HADR的备机。或者反之。但有些数据库在搭建时并没有做HADR,只预留了HADR的接口(配置了/etc/hosts,/etc/services和数据库的HADR参数),所以需要我们在备机到位后搭建HADR环境。
2 准备工作:
2.1 查看源库配置
l 查看并记录源库上数据库文件系统大小
df -g|grep db
l 查看数据库版本及安装路径
db2level
l 查看并记录instance ID, fence ID及其所属的group
lsuser <instance ID>
看instance属于哪个fence ID(看下面这个文件的owner)
ls -l $HOME/sqllib/adm/.fenced
lsuser <fence ID>
l 查看并记录最后备份情况,记下时间戳(恢复用)
db2 list history backup since 20170907 for db COSCO_DB
l 查看并记录数据库参数中关于HADR的配置
db2 get db cfg for COSCO_DB | grep HADR
HADR local host name (HADR_LOCAL_HOST) = TSM07_hadr1
HADR local service name (HADR_LOCAL_SVC) = TSM07_service_hadr1
HADR remote host name (HADR_REMOTE_HOST) = TSM07_hadr2
HADR remote service name (HADR_REMOTE_SVC) = TSM07_service_hadr2
HADR instance name of remote server (HADR_REMOTE_INST) = shruthra
HADR timeout value (HADR_TIMEOUT) = 120
HADR log write synchronization mode (HADR_SYNCMODE) = ASYNC
l 查看并记录/etc/hosts,/etc/services中关于HADR的条目
grep -i hadr /etc/hosts
10.0.20.61 TSM07_hadr1
10.4.23.56 TSM07_hadr2
grep -i hadr /etc/services
TSM07_service_hadr1 6001/tcp
TSM07_service_hadr2 6002/tcp
l 查看并记录带库配置信息
cat /usr/openv/netbackup/bp.conf
2.2 检查备库配置
l 检查磁阵挂载情况
在备机HA两边跑getlun.sh命令查看磁阵挂载情况(RAID10,两边磁盘需一一对应),lsvg datavg查看容量是否符合要求。这点很重要,否则等你做好了他们发现磁阵配置不合规,你又得重新做一次,我就被这样坑过!
l 检查带库配置
查看文件/usr/openv/netbackup/bp.conf是否存在,如果不存在则没有配置。
3 搭建HADR步骤
准备工作做完后,我们就可以开始搭建HADR了,具体步骤如下:
l 配置/etc/hosts,/etc/services信息
用ifconfig –a命令查看两边ip地址信息(取eth2部分的第一个ip),主库一般只需要修改指向备库的ip(HA的2台都要修改),如:10.4.23.56 TSM07_hadr2。备库2台HA则需要加入相应条目,和主库保持一致。
l 在备机安装db2介质
检查/opt目录剩余容量,必要时用如下命令扩展:
chfs -a size=+5G /opt
备机2台HA都要安装,版本和安装路径要和主机完全一致。
l 使用类似下面的命令在备机建立数据库实例(不建库)
脚本在介质服务器new.nim_master:/soft_new上,注意修改用户/组及数据库大小信息,-Check YES代表只产生输出,改为NO则实际执行。此脚本创建用户,文件系统及DB2 instance。
sh initdb2.sh -DBDATASIZEGB 150 -USERINFO db2inst1:db2igrp1,db2fenc1:db2fgrp1 -DB2PATH /opt/ibm/db2/V10.5.5_36366 -DB2VER V10.5.5 -NODENUM 1 -DB rptadb11 -CODEPAGE 1386 -TASK SYS FS USER INST DBM -Check YES
l 修改数据库相关文件系统大小
和主库保持一致,必要时用类似如下命令扩展:
chfs -a size=+5G /db/actlog
如果扩展报错,一般是达到了lv的MAX LPs限制,用lslv命令查看并用smitty chlv命令修改。
l 修改带库对应的client端,以便能访问主库的备份
将备库/usr/openv/netbackup/bp.conf备份,然后用主库的内容覆盖。
l 产生数据库重定向恢复脚本
db2 "restore db <dbname> load /usr/openv/netbackup/bin/nbdb2.sl64 taken at <bakuptimestamp> redirect generate script <dbname>.ddl"
如果出错,说明带库客户端配置有问题,联系系统管理员解决。
l 修改<dbname>.ddl
修改文件的on <路径> db2path on <路径> newlogpath<路径>,还有表空间路径(如果不是auto storage的话),如果数据库比较大,则启用PARALLELISM等参数,但估计效果不大。
l 后台跑恢复脚本
nohup db2 –tvf <dbname>.ddl &
restore完成后,不要跑rollforward命令,备机数据库状态要保持在rollforward pending。
l 配置备机数据库参数
主要是相关的diag, log文件系统的路径和HADR参数(需和主库相反,如下:)
HADR local host name (HADR_LOCAL_HOST) = TSM07_hadr2
HADR local service name (HADR_LOCAL_SVC) = TSM07_service_hadr2
HADR remote host name (HADR_REMOTE_HOST) = TSM07_hadr1
HADR remote service name (HADR_REMOTE_SVC) = TSM07_service_hadr1
l 如果之前的有hadr,先停止hadr ( 在主备机都停)
db2 stop hadr on db <dbname>
l 在备机上在起HADR
db2 start hadr on db <dbname> as standy
l 在主机上在起HADR
db2 start hadr on db <dbname> as primary
l Check HADR status
HADR启动后状态应该从disconnected/remote catch up pending变为connected/ remote catching up,说明备机在追日志,可以看到备机的当前日志号在变化,一直到connected/peer状态
db2pd -d <dbname> -hadr
l 将文件:/usr/openv/netbackup/bp.conf还原
到此,相信大家对“HADR的搭建步骤指南”有了更深的了解,不妨来实际操作一番吧!这里是亿速云网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!
免责声明:
① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。
② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341