db2 v10.5 HADR快速部署手册

一、目录准备
mkdir -p /home/db2inst1/db2_backup
mkdir -p /home/db2inst1/db2_archive
mkdir -p /home/db2inst1/db2_log
chmod -R 775 /home/db2inst1/db2_backup
chmod -R 775 /home/db2inst1/db2_archive
chmod -R 775 /home/db2inst1/db2_log
chown -R db2inst1:db2inst1 /home/db2inst1/db2_backup
chown -R db2inst1:db2inst1/home/db2inst1/db2_archive
chown -R  db2inst1:db2inst1 /home/db2inst1/db2_log

二、服务和端口配置(注意HADR服务端口和实例端口要区分开)
DB2_HADR_1     55110/tcp
DB2_HADR_2     55111/tcp

db2 get dbm cfg | grep -i SVCENAME 
db2 update dbm cfg using SVCENAME DB2_db2inst1
db2 update database manager configuration using svcename DB2_HADR_1(自定义名称)

主库
db2 update dbm cfg using  SVCENAME 55110
备库
db2 update dbm cfg using  SVCENAME 55111

UPDATE ALTERNATE SERVER FOR DATABASE SAMPLE USING HOSTNAME 192.168.12.107 PORT 50000

UPDATE ALTERNATE SERVER FOR DATABASE SAMPLE USING HOSTNAME 192.168.12.108 PORT 50000

三、开启归档模式 (主库和备库都操作)
先修改归档参数,做离线备份,重启数据库后,手工测试归档

主库
db2 update db cfg for sample using logarchmeth1 disk:/home/db2inst1/db2_archive/

db2 update db cfg for sample using NEWLOGPATH /home/db2inst1/db2_log

db2 force applications all

db2 backup db sample to /home/db2inst1/db2_backup/

db2stop force;db2start

db2 archive log for db sample

SQL1116N  A connection to or activation of database "SAMPLE" failed because
the database is in BACKUP PENDING state.  SQLSTATE=57019

备库:

db2 update db cfg for sample using logarchmeth1 disk:/home/db2inst1/db2_archive/

db2 update db cfg for sample using NEWLOGPATH /home/db2inst1/db2_log

db2 force applications all

db2 backup db sample to /home/db2inst1/db2_backup/

db2stop force;db2start

db2 archive log for db sample

四、备份和还原从库
主库离线全备份
1.db2 backup database sample to /home/db1inst1/db2_backup
3.scp /home/db2inst1/db2_backup/SAMPLE.0.db2inst1.DBPART000.20171220165404.001   [email protected]:/home/db2inst1/db2_backup/

备库还原数据
db2 restore database sample  from "/home/db2inst1/db2_backup/" taken at 20171220165404 replace history file

2.SQL2523W Warning! Restoring to an existing database that is different from

3.the database on the backup image, but have matching names. The target database

4.will be overwritten by the backup version. The Roll-forward recovery logs

5.associated with the target database will be deleted.

6.Do you want to continue ? (y/n) y

7.DB20000I The RESTORE DATABASE command completed successfully.

五、主库参数配置

db2 get db cfg for sample | grep -i HADR                                                                   
[[email protected] db2_backup]$ db2 get db cfg for sample | grep -i HADR
 HADR database role                                      = STANDARD
 HADR local host name                  (HADR_LOCAL_HOST) =
 HADR local service name                (HADR_LOCAL_SVC) =
 HADR remote host name                (HADR_REMOTE_HOST) =
 HADR remote service name              (HADR_REMOTE_SVC) =
 HADR instance name of remote server  (HADR_REMOTE_INST) =
 HADR timeout value                       (HADR_TIMEOUT) = 120
 HADR target list                     (HADR_TARGET_LIST) =
 HADR log write synchronization mode     (HADR_SYNCMODE) = NEARSYNC
 HADR spool log data limit (4KB)      (HADR_SPOOL_LIMIT) = AUTOMATIC(0)
 HADR log replay delay (seconds)     (HADR_REPLAY_DELAY) = 0
 HADR peer window duration (seconds)  (HADR_PEER_WINDOW) = 0

db2 update db cfg for  sample using HADR_LOCAL_HOST 192.168.12.108

db2 update db cfg for  sample using HADR_LOCAL_SVC DB2_HADR_2

db2 update db cfg for  sample using HADR_REMOTE_HOST 192.168.12.107

db2 update db cfg for  sample using HADR_REMOTE_SVC DB2_HADR_1

db2 update db cfg for  sample using HADR_REMOTE_INST db2inst1

db2 update db cfg for sample using HADR_SYNCMODE NEARSYNC

db2 update db cfg for sample  using HADR_TIMEOUT 120

备库参数配置

db2 get db cfg for sample | grep -i HADR

db2 update db cfg for sample using HADR_LOCAL_HOST 192.168.12.108

db2 update db cfg for sample using HADR_LOCAL_SVC  DB2_HADR_2

db2 update db cfg for sample using HADR_REMOTE_HOST 192.168.12.107

db2 update db cfg for sample using HADR_REMOTE_SVC  DB2_HADR_1

db2 update db cfg for sample using HADR_REMOTE_INST db2inst1

db2 update db cfg for sample using HADR_SYNCMODE NEARSYNC

db2 update db cfg for sample using HADR_TIMEOUT 120

db2 get db cfg for sample | grep -i HADR

启动HADR

先启动备库
standby端的数据库通过primary端的数据库恢复来,恢复后必须是roll forward-pending状态,
restore中不能使用without rolling forward,启动备库之前先确定这个状态
备库状态确认
db2 get db cfg for sample | grep Rollforward
Rollforward pending                                     = DATABASE

相比于主库:
db2 get db cfg for sample | grep Rollforward
Rollforward pending                                     = NO

启动备库
db2 start hadr on database sample as standby
[[email protected] ~]$ db2 start hadr on database sample as standby
SQL1766W  The command completed successfully. However, LOGINDEXBUILD was not
enabled before HADR was started.
查看HADR状态-目前只有备库,状态是disconnected

启动主库
db2 deactivate database sample
db2 start hadr on database sample as primary

现在主库和备库已经建立连接,HADR实验环境部署完成

db2 get snapshot for db on sample | grep -A 15 "HADR Status"

db2 get snapshot for db on hadb01 | grep -A 15 "HADR Status"

SQL1768N
未能启动 HADR。原因码 = reason-code。
说明:
与原因码对应的解释是:

1  不可恢复数据库,这是因为正在使用循环日志记录。
2  数据库启用了无限活动日志记录。
3  数据库启用了 DATALINKS。
4  HADR_LOCAL_HOST 配置参数与本地主机名不匹配。
5  HADR_LOCAL_SVC 配置参数是无效服务名称。
6  HADR_REMOTE_SVC 配置参数是无效服务名称。
7  在 HADR 超时时间间隔内,主数据库未能与它的备用数据库建立连接。
8  一个或多个 HADR 数据库配置参数没有任何值。
9  数据库配置为使用原始日志。但是,HADR 不支持对数据库日志文件使用原始 I/O(直接磁盘存取)。
10 命令由于 STOP HADR 命令、取消激活数据库或内部错误而被 HADR 关闭所中断。
98 未安装有效的 HADR 许可证。命令未成功完成。
99  在 HADR 启动期间发生了内部错误。

用户响应:
与原因码对应的用户响应是:

1 数据库必须是可恢复的数据库。激活日志归档或者打开 LOGRETAIN,然后重新发出该命令。
2 禁用无限活动日志记录并重新发出该命令。
3 将数据库管理器配置参数 DATALINKS 设置为 NO 并重新发出该命令。
4 将 HADR_LOCAL_HOST 设置更正为与本地主机名相匹配。
5 确保 HADR_LOCAL_SVC 配置参数是有效的服务名称。对于 Unix 平台,编辑 /etc/services 文件。对于 Windows,编辑 %SystemRoot%\system32\drivers\etc\services。另外,可以为此参数指定文字端口号。
6 确保 HADR_REMOTE_SVC 配置参数是有效服务名称。对于 Unix 平台,编辑 /etc/services 文件。对于 Windows,编辑 %SystemRoot%\system32\drivers\etc\services。另外,可以为此参数指定文字端口号。
7 检查备用数据库上的远程主机和远程服务参数。确保备用数据库是联机的,并且网络在起作用。如果网络速度太慢,则还要考虑增大 HADR_TIMEOUT 配置参数,或者使用 BY FORCE 选项来启动主数据库。
8 确保一个或多个 HADR 数据库配置参数具有值。
9 将数据库重新配置为对日志文件只使用文件系统存储器,而不是使用原始 I/O(直接磁盘存取)设备。参阅 DB2 信息中心中有关 logpath 和 newlogpath 数据库配置参数的讨论。
10找出 HADR 关闭的原因,如有必要,重新发出 START HADR 命令。
98 获取并安装有效的 HADR 许可证,然后重新提交该命令。
99 如果问题仍然存在,请与“IBM 支持机构”联系。

有时候我们会希望让一个实例下的某个数据库停止对外提供服务,而不影响其它的数据库,
这时就需要停止单个数据库。
方法总结如下:

一种方法是:
使用 quiense database停止单个数据库:
如果连上来的用户不是sysadm中的一员,你可用instance用户连接上数据库,然后用
db2 quiesce db IMMEDIATE FORCE CONNECTIONS
然后
db2 reset 或者db2 terminate
然后
deactivate db
办完事后,记得用db2 unquiesce db来恢复其对外连接。

具体流程如下:
db2 connect to sample
db2 quiesce db immediate force connections
db2 terminate

db2 deactivate db sample

db2 connect to sample
db2 unquiesce db

注意:
QUIESCE DATABASE 后,仅有 sysadm, sysmaint, dbadm, 或 sysctrl 用户可以访问数据库。
另一种方法:
停止访问:
db2 uncatalog database sample
db2 terminate

启动访问:
db2 catalog database sample
db2 terminate
db2 connect to sample

时间: 2024-10-14 13:12:02

db2 v10.5 HADR快速部署手册的相关文章

rsync 服务快速部署手册

一.rsync服务端安装 1.查看rsync安装包 # rpm -qa rsync rsync-3.0.6-12.el6.x86_64 2.安装rsync 系统默认都会安装rsync软件包的,如果查看发现没有安装,执行yum安装即可 # yum install rsync -y 3.添加rsync服务的用户,管理本地目录的 # useradd -s /sbin/nologin -M rsync # id rsync 4.生成rsyncd.conf配置文件 # cat /etc/rsyncd.co

?搭建LAMP环境及快速部署双网站并实现基于域名的虚拟主机

本节所讲内容: 实战:搭建LAMP环境及快速部署双网站并实现基于域名的虚拟主机 LAMP架构:??? Linux+Apache+Mysql+PHP Linux+Apache+Mysql/MariaDB+Perl/PHP/Python一组常用来搭建动态网站或者服务器的开源软件,共同组成了一个强大的Web应用程序平台. 一.安装需要的软件包 [[email protected] ~]# yum install httpd mysql-server mysql php php-mysql  -y ht

3分钟内快速部署MySQL5.6.35数据库实践

3分钟内快速部署MySQL5.6.35数据库实践 1.下载软件 wget -q http://mirrors.sohu.com/mysql/MySQL-5.6/mysql-5.6.35-linux-glibc2.5-x86_64.tar.gz 2.解压移动 tar xf mysql-5.6.35-linux-glibc2.5-x86_64.tar.gz  mkdir -p /application mv mysql-5.6.35-linux-glibc2.5-x86_64 /applicatio

System Center 2016 Data Protection Manager 部署手册

1. 环境描述 活动目录服务器 计算机名:SH-DC-01 Active Directory:365vCloud.net IP地址:192.168.100.2/24 操作系统:Windows Server 2016 中文标准版 已安装角色:ADDS活动目录服务 SCDPM服务器 计算机名:SH-SCDPM-01 Active Directory:365vCloud.net IP地址:192.168.100.7/24 操作系统:Windows Server 2016 中文标准版 已安装角色:无 2

System Center Configuration Manager,Version1606 部署手册

1. 环境描述 活动目录服务器 计算机名:SH-DC-01 所在域名或工作组名称:365vCloud.net IP地址:192.168.100.2/24 操作系统:Windows Server 2016 中文标准版 已安装角色:ADDS活动目录服务 SCCM中心站点服务器(CAS) 计算机名:SH-SCCM-01 所在域名或工作组名称:365vCloud.net IP地址:192.168.100.4/24 操作系统:Windows Server 2016 中文标准版 已安装角色:无 SCCM主站

MySQL入门02-MySQL二进制版本快速部署

在上篇文章 MySQL入门01-MySQL源码安装 中,我们介绍了MySQL源码安装的方法.源码安装虽然有着更加灵活和更加优化等诸多优势.但源码编译安装部署的过程相对复杂,而且整个过程所花费的时间很长.对于一整套系统和硬件完全一样的机器,其实完全可以只在一台机器源码安装,然后打包好编译出来的二进制版本,拷贝到其他机器解压,直接进行一些配置即可. 本篇文章就来介绍一下二进制版本安装配置MySQL的整个过程. 1.上传二进制版本 2.规划数据存放目录 3.解压二进制版本的MySQL 4.添加组和用户

MariaDB Galera Cluster 部署(如何快速部署 MariaDB 集群)

MariaDB Galera Cluster 部署(如何快速部署 MariaDB 集群)  OneAPM蓝海讯通7月3日 发布 推荐 4 推荐 收藏 14 收藏,1.1k 浏览 MariaDB 作为 Mysql 的一个分支,在开源项目中已经广泛使用,例如大热的 openstack,所以,为了保证服务的高可用性,同时提高系统的负载能力,集群部署是必不可少的. MariaDB Galera Cluster 介绍 MariaDB 集群是 MariaDB 同步多主机集群.它仅支持 XtraDB/ Inn

storm集群部署手册

一.  准备 1.  硬件 三台装好RHEL6.7_x64的x86服务器,机器名如下 storm01 storm02 storm03 2.  软件 jdk-7u80-linux-x64.rpm apache-storm-1.0.1.zip 3.  zookeeper storm需用到zookeeper,开始安装前先安装好zookeeper,参照zookeeper集群部署手册 4.  Python storm需用到python,一般Linux都有python,这里需要python 2.6.6,如没

快速部署Windows Nano Server 2016 Hyper-V虚拟机

在微软新发布的Windows Server 2016中除了Server Core和GUI版本外,还新增了一个为云端量身定做的Windows Nano Server版本,类似于Server Core,但是比Server Core显得更新的轻巧,更加的精简,仅有几百兆,当然对于OS所需要的安全补丁等也少得多. 对于Windows Nano Server 2016是支持部署在物理服务器或虚拟化平台上的.目前的Nano Server的部署方式不同于Server Core或GUI版本,并没有传统的安装向导