Docker HADR:SQL1767N Start HADR cannot complete.Reason code=1
(2016-09-19 10:33:09)
标签:
it |
分类: database |
在docker上搭建Hadr遇到的问题
关于docker Hadr 的一些建议:
1. 参考IBM 官网文档
http://www.ibm.com/developerworks/cn/data/library/techarticles/dm-0508luojunkai/index.html
在同一个宿主机建立两个docker 容器,分别为primary 和standby
2. 建立容器后,分别安装好db2,在primary 容器建立primary db, 按文档进行db配置并备份
3. 把primary 容器里的备份库文件拷贝到standby 容器,并恢复
4. 最重要的是两个容器间的通信。 由于容器的隔离机制,恢复后的standby和primary db并不能通信。由于这两个容器都在同一宿主机,可以通过默认的docker0 进行通信。此处做法是:在容器内修改/etc/hosts 添加对方容器的ip 最后完成通信
:SQL1767N Start HADR cannot complete. Reason code = "1".
因为在standby 的容器里restore primary db 后,用了前滚rollforward 操作导致。
备库恢复后再rollforward报错,其实只要在备库restore就可以了,不要画蛇添足的再做前滚恢复
$ db2 restore db test from /db2data/ taken at 20160819043912 replace history file
DB20000I
关于docker Hadr 的一些建议:
1. 参考IBM 官网文档
http://www.ibm.com/developerworks/cn/data/library/techarticles/dm-0508luojunkai/index.html
在同一个宿主机建立两个docker 容器,分别为primary 和standby
2. 建立容器后,分别安装好db2,在primary 容器建立primary db, 按文档进行db配置并备份
3. 把primary 容器里的备份库文件拷贝到standby 容器,并恢复
4. 最重要的是两个容器间的通信。 由于容器的隔离机制,恢复后的standby和primary db并不能通信。由于这两个容器都在同一宿主机,可以通过默认的docker0 进行通信。此处做法是:在容器内修改/etc/hosts 添加对方容器的ip