DB2 HADR安装

1.系统环境准备,db02作为primary节点,db03作为standby节点
[db2inst1@db02 archivelog]$ cat /etc/hostshttps://www.cndba.cn/hbhe0316/article/4818

https://www.cndba.cn/hbhe0316/article/4818
192.168.2.167 db02
192.168.2.163 db03

2.创建主库并插入表

db2 "CREATE DB testdb on /db2data/testdb using codeset UTF-8 territory us PAGESIZE 8192"
db2 "UPDATE DB CFG FOR testdb USING applheapsz 4096"
db2 "UPDATE DB CFG FOR testdb USING app_ctl_heap_sz 1024"
db2 "UPDATE DB CFG FOR testdb USING stmtheap 32768"
db2 "UPDATE DB CFG FOR testdb USING dbheap 2400"
db2 "UPDATE DB CFG FOR testdb USING locklist 1000"
db2 "UPDATE DB CFG FOR testdb USING logfilsiz 4000"
db2 "UPDATE DB CFG FOR testdb USING logprimary 12"
db2 "UPDATE DB CFG FOR testdb USING logsecond 20"
db2 "UPDATE DB CFG FOR testdb USING logbufsz 32"
db2 "UPDATE DB CFG FOR testdb USING avg_appls 5"
db2 "UPDATE DB CFG FOR testdb USING locktimeout 30"
db2 "UPDATE DB CFG FOR testdb using AUTO_MAINT off"

db2 "UPDATE DB CFG FOR TESTDB USING LOGINDEXBUILD  ON  LOGARCHMETH1 logretain"
db2 "update db cfg for testdb using trackmod on"
db2 "update db cfg for testdb using indexrec restart"
db2 "update db cfg for testdb using HADR_LOCAL_HOST 192.168.2.167"
db2 "update db cfg for testdb using HADR_LOCAL_SVC 54321"
db2 "update db cfg for testdb using HADR_REMOTE_HOST 192.168.2.163"
db2 "update db cfg for testdb using HADR_REMOTE_SVC 54321"
db2 "update db cfg for testdb using HADR_REMOTE_INST db2inst1"
db2 "update db cfg for testdb using HADR_TIMEOUT 120"
db2 "update db cfg for testdb using HADR_PEER_WINDOW 10"
db2 "update db cfg for testdb using HADR_SYNCMODE sync"

3.备份主库并传送至备库

[db2inst1@db02 testdb]$ db2 backup db testdb to /db2data/backup/
[db2inst1@db02 backup]$ cd /db2data/backup
[db2inst1@db02 backup]$ scp TESTDB.0.db2inst1.DBPART000.20190811162133.001 192.168.2.163:/db2data/backup/

4.恢复备库,在备库执行https://www.cndba.cn/hbhe0316/article/4818

[db2inst1@db03 backup]$ db2 restore db testdb from /db2data/backup/

5.修改备库hadr参数

https://www.cndba.cn/hbhe0316/article/4818
db2 "update db cfg for testdb using HADR_LOCAL_HOST 192.168.2.163"
db2 "update db cfg for testdb using HADR_REMOTE_HOST 192.168.2.167"

6.修改hadr_target_list
主库执行

db2 "UPDATE DB CFG FOR TESTDB USING HADR_TARGET_LIST  192.168.2.163:54321"

备库执行

db2 "UPDATE DB CFG FOR TESTDB USING HADR_TARGET_LIST  192.168.2.167:54321"

7.备机启动HADR

https://www.cndba.cn/hbhe0316/article/4818
https://www.cndba.cn/hbhe0316/article/4818
[db2inst1@db03 backup]$ db2 START HADR ON DB TESTDB AS STANDBY
DB20000I  The START HADR ON DATABASE command completed successfully.

8.在主库启动HADR

https://www.cndba.cn/hbhe0316/article/4818
[db2inst1@db02 backup]$ db2 START HADR ON DB TESTDB AS PRIMARY
DB20000I  The START HADR ON DATABASE command completed successfully.

9.在主机检查主备机状态https://www.cndba.cn/hbhe0316/article/4818

[db2inst1@db02 backup]$ db2pd -db testdb -hadr

Database Member 0 -- Database TESTDB -- Active -- Up 0 days 00:01:02 -- Date 2019-08-11-17.00.43.510622

                            HADR_ROLE = PRIMARY
                          REPLAY_TYPE = PHYSICAL
                        HADR_SYNCMODE = SYNC
                           STANDBY_ID = 1
                        LOG_STREAM_ID = 0
                           HADR_STATE = PEER
                           HADR_FLAGS = 
                  PRIMARY_MEMBER_HOST = 192.168.2.167
                     PRIMARY_INSTANCE = db2inst1
                       PRIMARY_MEMBER = 0
                  STANDBY_MEMBER_HOST = 192.168.2.163
                     STANDBY_INSTANCE = db2inst1
                       STANDBY_MEMBER = 0
                  HADR_CONNECT_STATUS = CONNECTED
             HADR_CONNECT_STATUS_TIME = 08/11/2019 16:59:44.003073 (1565513984)
          HEARTBEAT_INTERVAL(seconds) = 2
                HADR_TIMEOUT(seconds) = 120
        TIME_SINCE_LAST_RECV(seconds) = 30
             PEER_WAIT_LIMIT(seconds) = 0
           LOG_HADR_WAIT_CUR(seconds) = 0.000
    LOG_HADR_WAIT_RECENT_AVG(seconds) = 0.000000
   LOG_HADR_WAIT_ACCUMULATED(seconds) = 0.000
                  LOG_HADR_WAIT_COUNT = 0
SOCK_SEND_BUF_REQUESTED,ACTUAL(bytes) = 0, 19800
SOCK_RECV_BUF_REQUESTED,ACTUAL(bytes) = 0, 87380
            PRIMARY_LOG_FILE,PAGE,POS = S0000000.LOG, 0, 40760001
            STANDBY_LOG_FILE,PAGE,POS = S0000000.LOG, 0, 40760001
                  HADR_LOG_GAP(bytes) = 0
     STANDBY_REPLAY_LOG_FILE,PAGE,POS = S0000000.LOG, 0, 40760001
       STANDBY_RECV_REPLAY_GAP(bytes) = 4069492
                     PRIMARY_LOG_TIME = 08/11/2019 16:53:24.000000 (1565513604)
                     STANDBY_LOG_TIME = 08/11/2019 16:53:24.000000 (1565513604)
              STANDBY_REPLAY_LOG_TIME = 08/11/2019 16:53:24.000000 (1565513604)
         STANDBY_RECV_BUF_SIZE(pages) = 64
             STANDBY_RECV_BUF_PERCENT = 0
           STANDBY_SPOOL_LIMIT(pages) = 128000
                STANDBY_SPOOL_PERCENT = 0
                 PEER_WINDOW(seconds) = 10
                      PEER_WINDOW_END = 08/11/2019 17:00:52.000000 (1565514052)
             READS_ON_STANDBY_ENABLED = N

10.在备机执行命令

[db2inst1@db03 backup]$ db2pd -db testdb -hadr

Database Member 0 -- Database TESTDB -- Standby -- Up 0 days 00:02:43 -- Date 2019-08-11-17.01.37.581033

                            HADR_ROLE = STANDBY
                          REPLAY_TYPE = PHYSICAL
                        HADR_SYNCMODE = SYNC
                           STANDBY_ID = 0
                        LOG_STREAM_ID = 0
                           HADR_STATE = PEER
                           HADR_FLAGS = 
                  PRIMARY_MEMBER_HOST = 192.168.2.167
                     PRIMARY_INSTANCE = db2inst1
                       PRIMARY_MEMBER = 0
                  STANDBY_MEMBER_HOST = 192.168.2.163
                     STANDBY_INSTANCE = db2inst1
                       STANDBY_MEMBER = 0
                  HADR_CONNECT_STATUS = CONNECTED
             HADR_CONNECT_STATUS_TIME = 08/11/2019 16:59:43.802864 (1565513983)
          HEARTBEAT_INTERVAL(seconds) = 30
                HADR_TIMEOUT(seconds) = 120
        TIME_SINCE_LAST_RECV(seconds) = 2
             PEER_WAIT_LIMIT(seconds) = 0
           LOG_HADR_WAIT_CUR(seconds) = 0.000
    LOG_HADR_WAIT_RECENT_AVG(seconds) = 0.000000
   LOG_HADR_WAIT_ACCUMULATED(seconds) = 0.000
                  LOG_HADR_WAIT_COUNT = 0
SOCK_SEND_BUF_REQUESTED,ACTUAL(bytes) = 0, 19800
SOCK_RECV_BUF_REQUESTED,ACTUAL(bytes) = 0, 87380
            PRIMARY_LOG_FILE,PAGE,POS = S0000000.LOG, 0, 40760001
            STANDBY_LOG_FILE,PAGE,POS = S0000000.LOG, 0, 40760001
                  HADR_LOG_GAP(bytes) = 0
     STANDBY_REPLAY_LOG_FILE,PAGE,POS = S0000000.LOG, 0, 40760001
       STANDBY_RECV_REPLAY_GAP(bytes) = 4069492
                     PRIMARY_LOG_TIME = 08/11/2019 16:53:24.000000 (1565513604)
                     STANDBY_LOG_TIME = 08/11/2019 16:53:24.000000 (1565513604)
              STANDBY_REPLAY_LOG_TIME = 08/11/2019 16:53:24.000000 (1565513604)
         STANDBY_RECV_BUF_SIZE(pages) = 64
             STANDBY_RECV_BUF_PERCENT = 0
           STANDBY_SPOOL_LIMIT(pages) = 128000
                STANDBY_SPOOL_PERCENT = 0
                 PEER_WINDOW(seconds) = 10
                      PEER_WINDOW_END = 08/11/2019 17:01:46.000000 (1565514106)
             READS_ON_STANDBY_ENABLED = N

11.备机接管主机

[db2inst1@db03 backup]$ db2 "TAKEOVER HADR ON DATABASE testdb USER db2inst1 USING wwwwww"
DB20000I  The TAKEOVER HADR ON DATABASE command completed successfully.

这样原来的备机变成主机,主机变成备机。

https://www.cndba.cn/hbhe0316/article/4818

12.强制接管
强制接管条件:当主机数据库崩溃,需要备机强制接管成为主机,备机成为主机后,需要手动的备份数据库,再恢复到已经崩溃的数据库中。

https://www.cndba.cn/hbhe0316/article/4818
db2 "TAKEOVER HADR ON DATABASE testdb USER db2inst1 USING wwwwww by force"

版权声明:本文为博主原创文章,未经博主允许不得转载。

Linux,oracle

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值