DM实时主备集群部署

目录

二 、DM主备机群部署

2.1安装前配置内容:两台虚拟机一台监视机

2.2停止数据库实例服务,并从主库备份库在备份库上进行还原操作。

2.3配置主机的dm.ini文件(打开主机实例的dm.ini文件并作出一下修改。)

2.4配置主机的dmmal.ini文件(主备信息控制文件)

2.5配置主机的dmarch.ini文件(配置主机的归档文件应该发送到哪)

2.6配置主机的dmwatcher.ini设置守护进程控制文件

2.7以mount挂载的方式重启服务

2.8使用disql配置相关参数

2.9配置备机

2.10配置监视器(本次建立在dm102上)

2.11注册并重启服务


二 、DM主备机群部署

2.1安装前配置内容:两台虚拟机一台监视机

主机名

ip地址

实例port

Dm101

192.168.20.157

3371

Dm102

192.168.20.156

3372

监视器

192.168.20.156

2.2停止数据库实例服务,并从主库备份库在备份库上进行还原操作。

$停止数据库服务(为了保证是进行冷备份)

#systemctl stop DmServicedm101_z.service

#systemctl stop DmServicedm101_b.service

$备份数据库

#backup database '/soft/dmdata/dm101_z/dm.ini' full to dm101_b backupset '/soft/dmarch/dm101'

$将备库传输到备份机进行还原

scp -r dm101/ dm102@192.168.20.160:/soft/dmarch/

#确认传输文件

#启动DMRMAN进行备库恢复

#restore database '/soft/dmdata/dm102_b/dm.ini' from backupset '/soft/dmarch/dm101/'

由于主库中有实例库,而备库中没有,因此还原了部分数据文件

#recover database '/soft/dmdata/dm102_b/dm.ini' from backupset '/soft/dmarch/dm101/'

#recover database '/soft/dmdata/dm102_b/dm.ini' update db_magic

2.3配置主机的dm.ini文件(打开主机实例的dm.ini文件并作出一下修改。)

Instance_name=     #你的主机名,不需要修改

Arch_ini=1

Mal_ini=1

Alter_mode_status=0

Enable_offline_ts=2

2.4配置主机的dmmal.ini文件(主备信息控制文件)

MAL_CHECK_INTERVAL = 5 #MAL 链路检测时间间隔

MAL_CONN_FAIL_INTERVAL = 5 #判定 MAL 链路断开的时间

[MAL_INST1] #主机

MAL_INST_NAME =dm101_z #实例名,和 dm.ini 中的 INSTANCE_NAME 一致

MAL_HOST =192.168.20.157 #MAL 系统监听 TCP 连接的 IP 地址

MAL_PORT = 61141 #MAL 系统监听 TCP 连接的端口

MAL_INST_HOST =192.168.20.157 #实例的对外服务 IP 地址

MAL_INST_PORT = 3371#实例的对外服务端口,和 dm.ini 中的 PORT_NUM 一致

MAL_DW_PORT = 52141 #实例本地的守护进程监听 TCP 连接的端口

MAL_INST_DW_PORT = 33141 #实例监听守护进程 TCP 连接的端口

[MAL_INST2] #备机

MAL_INST_NAME =dm102_b

MAL_HOST =192.168.20.158

MAL_PORT = 61142

MAL_INST_HOST =192.168.20.158

MAL_INST_PORT = 3372

MAL_DW_PORT = 52142

MAL_INST_DW_PORT = 33142

2.5配置主机的dmarch.ini文件(配置主机的归档文件应该发送到哪)

[ARCHIVE_REALTIME]

ARCH_TYPE = REALTIME #实时归档类型

ARCH_DEST = dm102_b #实时归档目标实例名

[ARCHIVE_LOCAL1]

ARCH_TYPE = LOCAL #本地归档类型

ARCH_DEST =/soft/dmarch #本地归档文件存放路径

ARCH_FILE_SIZE = 128 #单位 Mb,本地单个归档文件最大值

ARCH_SPACE_LIMIT = 0 #单位 Mb,0 表示无限制,范围 1024~2147483647M

2.6配置主机的dmwatcher.ini设置守护进程控制文件

[GRP1] #组名

DW_TYPE = GLOBAL #全局守护类型

DW_MODE = AUTO #自动切换模式

DW_ERROR_TIME = 10 #远程守护进程故障认定时间

INST_RECOVER_TIME = 60 #主库守护进程启动恢复的间隔时间

INST_ERROR_TIME = 10 #本地实例故障认定时间

INST_OGUID = 453331 #守护系统唯一 OGUID 值(根据情况修改)

INST_INI =/soft/dmdata/dm101_z/dm.ini #dm.ini 配置文件路径

INST_AUTO_RESTART = 1 #打开实例的自动启动功能

INST_STARTUP_CMD = /soft/dmdba/dmdhs/bin/dmserver #命令行方式启动

RLOG_SEND_THRESHOLD = 0 #指定主库发送日志到备库的时间阈值,默认关闭

RLOG_APPLY_THRESHOLD = 0 #指定备库重演日志的时间阈值,默认关闭

2.7以mount挂载的方式重启服务

$以mount的方式启动数据库实例否则系统会重构roll表空间,产生redo日志,破坏数据一致性。

#./dmserver /soft/dmdata/dm101_z/dm.ini mount

2.8使用disql配置相关参数

$而后,新打开一个命令行窗口,启动disql命令行工具,登录数据库,将数据库设为primary模式并设置oguid值(在dmwatcher.ini中设置的),注意以disql连接数据库时如果不设ip和端口号则默认连接本机的5236端口,此时如果数据库实例不是默认端口便会报网络连接错误。

#conn SYSDBA/tangyurun123@192.168.20.157:3371

SP_SET_PARA_VALUE(1, 'ALTER_MODE_STATUS', 1);

sp_set_oguid(453331);

alter database primary;

SP_SET_PARA_VALUE(1, 'ALTER_MODE_STATUS', 0);

2.9配置备机

2.9.1备机的dm.ini、dmmal.ini、dmwatcher配置与主机基本一致(仅实例名、安装路径可能存在差异需要调整),在此不做赘述,可用scp命令直接传输过来。

2.9.2配置备机的dmarch.ini,因为这是备机,要将归档发送到主机,因此ARCH_DEST要写主机的实例。

[ARCHIVE_REALTIME]

ARCH_TYPE = REALTIME #实时归档类型

ARCH_DEST =dm101_z #实时归档目标实例名

[ARCHIVE_LOCAL1]

ARCH_TYPE = LOCAL #本地归档类型

ARCH_DEST = 自己的归档路径 #本地归档文件存放路径

ARCH_FILE_SIZE = 128 #单位 Mb,本地单个归档文件最大值

ARCH_SPACE_LIMIT = 0 #单位 Mb,0 表示无限制,范围 1024~2147483647M

2.9.3mount方式启动备库:

#./dmserver /soft/dmdata/dm102_b/dm.ini mount

新开命令行,使用disql执行SQL:

SP_SET_PARA_VALUE(1, 'ALTER_MODE_STATUS', 1);

sp_set_oguid(453331);

alter database standby;

SP_SET_PARA_VALUE(1, 'ALTER_MODE_STATUS', 0);

2.10配置监视器(本次建立在dm102上)

因为这个集群设置的故障自动切换,所以需要第三台机器作为监视器,在dm的安装目录下新建dmmonitor.ini,其中的MON_DW_IP中的IP与PORT需要和dmmal.ini中的MAL_HOST与MAL_DW_PORT保持一致。

MON_DW_CONFIRM = 1 #确认监视器模式

MON_LOG_PATH = /soft/dmdba/dmdhs/log #监视器日志文件存放路径

MON_LOG_INTERVAL = 60 #每隔 60s 定时记录系统信息到日志文件

MON_LOG_FILE_SIZE = 32 #每个日志文件最大 32M

MON_LOG_SPACE_LIMIT = 0 #不限定日志文件总占用空间

[GRP1]

MON_INST_OGUID = 453331 #组 GRP1 的唯一 OGUID 值

MON_DW_IP = 192.168.20.159:52141 #主机的MAL_HOST对应ip+冒号+主机的守护进程监听端口MAL_DW_PORT

MON_DW_IP = 192.168.20.160:52142

2.11注册并重启服务

1、注册服务。需要在服务器上注册数据库实例、守护进程与监视器的服务,当然,之前注册过的数据库实例是不需要再次注册的,命令行注册数据库实例、守护进程和监视器服务的方式,使用root用户在dm安装目录的bin目录下执行:

--注册主库实例服务

./dm_service_installer.sh -t dmserver -dm_ini /soft/dmdata/dm101_z/dm.ini -m mount -p dm101_z

./dm_service_installer.sh -t dmserver -dm_ini /soft/dmdata/dm102_b/dm.ini -m mount -p dm102_b

--注册主库守护进程服务

./dm_service_installer.sh -t dmwatcher -watcher_ini /soft/dmdata/dm101_z/dmwatcher.ini -p dm101_zS

./dm_service_installer.sh -t dmwatcher -watcher_ini /soft/dmdata/dm102_b/dmwatcher.ini -p dm102_bS

--注册监视器服务

./dm_service_installer.sh -t dmmonitor -monitor_ini /soft/dmdba/dmdbms/dmmonitor.ini -p dm102_bDm

2、启动服务,先启动主备机的数据库实例服务与守护进程而后启动监视器,启动方式是在dm安装目录的bin目录下执行:

--启动数据库实例启动守护进程

./dmserver /soft/dmdata/dm101_z/dm.ini

./dmwatcher /soft/dmdata/dm101_z/dmwatcher.ini

./dmserver /soft/dmdata/dm102_b/dm.ini

./dmwatcher /soft/dmdata/dm102_b/dmwatcher.ini

--启动监视器

./dmmonitor /soft/dmdba/dmdbms/dmmonitor.ini

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值