设为首页 收藏本站
查看: 1218|回复: 0

[经验分享] 搭建简单的DB2 HADR

[复制链接]

尚未签到

发表于 2016-11-13 09:31:29 | 显示全部楼层 |阅读模式
简单的HADR,只用一台虚拟机,两个实例间搭建。工作量不大,一般5分钟左右能够完成。
步骤:
1.设定归档模式
2.使用备份建立standby数据库
3.设定hadr相关的参数
4.启动并测试

环境:
Server: 127.0.0.1
Primary instance: db2inst4
Primary service/port: 42099
Standby instance: db2inst5
Standby service/port: 41099
DB name: SAMPLE
--注意,切勿使用与DBM SVCENAME 太接近的端口,因为实例会默认使用那端口之后的连续几个端口,所以应尝试更远一些的端口


1.设定归档模式

--在Primary:
--启用归档模式
[db2inst4@localhost instance]$ db2 update db cfg for SAMPLE using LOGRETAIN on
DB20000I  The UPDATE DATABASE CONFIGURATION command completed successfully.
--启用LOGINDEXBUILD,以便日志有关索引的操作
[db2inst4@localhost instance]$ db2 update db cfg for SAMPLE using LOGINDEXBUILD on
DB20000I  The UPDATE DATABASE CONFIGURATION command completed successfully.


2.使用备份建立standby数据库

--备份primary
[db2inst4@localhost arch]$ db2 list db directory
System Database Directory
Number of entries in the directory = 1
Database 1 entry:
Database alias                       = SAMPLE
Database name                        = SAMPLE
Local database directory             = /home/db2inst4
Database release level               = d.00
Comment                              =
Directory entry type                 = Indirect
Catalog database partition number    = 0
Alternate server hostname            =
Alternate server port number         =
[db2inst4@localhost arch]$ db2 backup db sample to /arch
Backup successful. The timestamp for this backup image is : 20110430101950
[db2inst4@localhost arch]$ ls -atrl
total 135208
drwxr-x---  3 db2inst1 db2iadm1      4096 Dec  8 12:12 db2inst1
drwxr-xr-x 27 root     root          4096 Apr 22 23:45 ..
drwxrwxrwx  3 root     root          4096 Apr 30 10:19 .
-rw-------  1 db2inst4 db2iadm1 138297344 Apr 30 10:20 SAMPLE.0.db2inst4.NODE0000.CATN0000.20110430101950.001
--注意修改备份文件属性,以便standby实例能够访问
[db2inst4@localhost arch]$ chmod 777 SAMPLE.0.db2inst4.NODE0000.CATN0000.20110430101950.001
--在standby:
[db2inst5@localhost ~]$ db2 restore db sample from /arch/ on /home/db2inst5/
DB20000I  The RESTORE DATABASE command completed successfully.
[db2inst5@localhost ~]$ db2 list db directory
System Database Directory
Number of entries in the directory = 1
Database 1 entry:
Database alias                       = SAMPLE
Database name                        = SAMPLE
Local database directory             = /home/db2inst5
Database release level               = d.00
Comment                              =
Directory entry type                 = Indirect
Catalog database partition number    = 0
Alternate server hostname            =
Alternate server port number         =
--这时候standby的数据库应该是roll-forward pedning的状态,切勿手动roll-forward
[db2inst5@localhost ~]$ db2 connect to SAMPLE
SQL1117N  A connection to or activation of database "SAMPLE" cannot be made
because of ROLL-FORWARD PENDING.  SQLSTATE=57019


3.设定hadr相关的参数

--在Primary:
db2 update db cfg for sample using HADR_LOCAL_HOST 127.0.0.1
db2 update db cfg for sample using HADR_LOCAL_SVC 42099
db2 update db cfg for sample using HADR_REMOTE_HOST 127.0.0.1
db2 update db cfg for sample using HADR_REMOTE_SVC 41099
db2 update db cfg for sample using HADR_REMOTE_INST db2inst5
db2 update db cfg for sample using HADR_SYNCMODE SYNC
db2 update db cfg for sample using HADR_TIMEOUT 3
db2 update db cfg for sample using HADR_PEER_WINDOW 120
db2 connect to sample
db2 quiesce database immediate force connections
db2 unquiesce database
db2 connect reset
--在Standby:
db2 update db cfg for sample using HADR_LOCAL_HOST 127.0.0.1
db2 update db cfg for sample using HADR_LOCAL_SVC 41099
db2 update db cfg for sample using HADR_REMOTE_HOST 127.0.0.1
db2 update db cfg for sample using HADR_REMOTE_SVC 42099
db2 update db cfg for sample using HADR_REMOTE_INST db2inst4
db2 update db cfg for sample using HADR_SYNCMODE SYNC
db2 update db cfg for sample using HADR_TIMEOUT 3
db2 update db cfg for sample using HADR_PEER_WINDOW 120


4.启动并测试

--先启动standby
--在Standby:
[db2inst5@localhost ~]$ db2 start hadr on db sample as standby
DB20000I  The START HADR ON DATABASE command completed successfully.
--这时候应该是remote catchup pending的状态:
[db2inst5@localhost ~]$ db2pd -d sample -hadr
Database Partition 0 -- Database SAMPLE -- Standby -- Up 0 days 00:03:44
HADR Information:
Role    State                SyncMode HeartBeatsMissed   LogGapRunAvg (bytes)
Standby RemoteCatchupPending Sync     0                  1                  
ConnectStatus ConnectTime                           Timeout   
Disconnected  Sat Apr 30 14:09:54 2011 (1304143794) 3         
PeerWindowEnd                         PeerWindow
Null (0)                              120      
LocalHost                                LocalService      
127.0.0.1                                41099            
RemoteHost                               RemoteService      RemoteInstance   
127.0.0.1                                42099              db2inst4         
PrimaryFile  PrimaryPg  PrimaryLSN        
S0000000.LOG 0          0x0000000002AC24A1
StandByFile  StandByPg  StandByLSN         StandByRcvBufUsed
S0000000.LOG 0          0x0000000002AC24A1 0%  
--再启动Primary
--在Primary:
[db2inst4@localhost ~]$ db2 start hadr on database sample as primary
DB20000I  The START HADR ON DATABASE command completed successfully.
[db2inst4@localhost ~]$ db2pd -d sample -hadr
Database Partition 0 -- Database SAMPLE -- Active -- Up 0 days 00:00:15
HADR Information:
Role    State                SyncMode HeartBeatsMissed   LogGapRunAvg (bytes)
Primary Peer                 Sync     0                  0                  
ConnectStatus ConnectTime                           Timeout   
Connected     Sat Apr 30 14:14:14 2011 (1304144054) 3         
PeerWindowEnd                         PeerWindow
Sat Apr 30 14:16:26 2011 (1304144186) 120      
LocalHost                                LocalService      
127.0.0.1                                42099            
RemoteHost                               RemoteService      RemoteInstance   
127.0.0.1                                41099              db2inst5         
PrimaryFile  PrimaryPg  PrimaryLSN        
S0000002.LOG 0          0x0000000003288861
StandByFile  StandByPg  StandByLSN        
S0000002.LOG 0          0x0000000003288861
--可以看到一旦Primary也起来了,hadr的状态就会变成peer
--这时候尝试手动归档,看日志是否能够顺利传递到standby
[db2inst4@localhost ~]$ db2 archive log for DB sample
DB20000I  The ARCHIVE LOG command completed successfully.
--在Standby观察
[db2inst5@localhost ~]$ db2pd -d sample -hadr
Database Partition 0 -- Database SAMPLE -- Standby -- Up 0 days 00:05:25
HADR Information:
Role    State                SyncMode HeartBeatsMissed   LogGapRunAvg (bytes)
Standby Peer                 Sync     0                  0                  
ConnectStatus ConnectTime                           Timeout   
Connected     Sat Apr 30 14:14:14 2011 (1304144054) 3         
PeerWindowEnd                         PeerWindow
Sat Apr 30 14:17:18 2011 (1304144238) 120      
LocalHost                                LocalService      
127.0.0.1                                41099            
RemoteHost                               RemoteService      RemoteInstance   
127.0.0.1                                42099              db2inst4         
PrimaryFile  PrimaryPg  PrimaryLSN        
S0000003.LOG 0          0x000000000366BA41
StandByFile  StandByPg  StandByLSN         StandByRcvBufUsed
S0000003.LOG 0          0x000000000366BA41 0%  
--两边当前日志都是S0000003.LOG,测试成功

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-299555-1-1.html 上篇帖子: DB2 设置本地JDK目录 下篇帖子: DB2数据操作语言
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表