注册
DM8的主备集群搭建及切换
培训园地/ 文章详情 /

DM8的主备集群搭建及切换

钢蹦儿 2025/08/06 27 0 0

主库 192.168.88.12
备库 192.168.88.3
monitor:192.168.88.4

首先要关闭防火墙和SELINUX,切记切记!!!

1.主库停库

shutdown immediate

2.修改dm.ini

cd /dm8/data/DM01
vi dm.ini
修改如下配置:
MAL_INI = 1 #打开 MAL 系统
ARCH_INI = 1 #打开归档配置
ALTER_MODE_STATUS = 0 #不允许手工方式修改实例模式/状态/OGUID
ENABLE_OFFLINE_TS = 2 #不允许备库 OFFLINE 表空间
INSTANCE_NAME = DMSVR01 #区分主备库

3.备份主库

dmrman
backup database '/dm8/data/DAMENG/dm.ini' backupset '/dm8/backup/FULLDB'

4.准备配置文件(考试中配置文件在/opt目录下)

配置文件建议统一放在/dm8/data/DM01/ 目录下,便于管理
dmarch.ini
dmmal.ini
dmwatcher.ini

文件中路径结合实际环境修改

dmarch.ini文件中修改ARCH_DEST
主库的配置文件中写备库的实例名
备库的配置文件中写主库的实例名

dmmal.ini文件中修改
[MAL_INST1]
MAL_INST_NAME = 主库实例名
MAL_HOST = 主库IP

[MAL_INST2]
MAL_INST_NAME = 备库实例名
MAL_HOST = 备库IP

dmwatcher.ini中无需特殊修改

5.拷贝备份集到备机

scp -r /dm8/backup/FULLDB dmdba@备库ip:/dm8/backup/

6.在备库上进行还原恢复

cd $DM_HOME
cd bin
./dmrman
restore database to '/dm8/data/DM01' from backupset '/dm8/backup/FULLDB';

如果目录中有文件则执行restore database to '/dm8/data/DM01' overwrite from backupset '/dm8/backup/FULLDB';

recover database '/dm8/data/DM01/dm.ini' update db_magic;

7.在备库上修改配置文件
dm.ini 中修改备库实例名
INSTANCE_NAME = DMSVR02 #区分主备库

8.拷贝主库上的dmarch.in dmmal.ini dmwatcher.ini到备库并适当修改

9.主备库都启动至mount

主机运行

cd /dm8/bin

dmserver /dm8/data/DM01/dm.ini mount
另开一个终端
su - dmdba
disql SYSDBA/DMsysdba123
sp_set_oguid(88888);
alter database primary;

备机执行
cd /dm8/bin
dmserver /dm8/data/DM01/dm.ini mount
另开一个终端
su - dmdba
cd $DM_HOME/bin
./disql SYSDBA/DMsysdba123
sp_set_oguid(88888);
alter database standby;

验证修改状态
select mode$,oguid from v$instance;

10.启动dmwatch

主机
另开一个终端 su - dmdba
cd /dm8/bin
./dmwatcher /dm8/data/DM01/dmwatcher.ini
执行show查看状态

备机
另开一个终端 su - dmdba
cd /$DM_HOME/bin
./dmwatcher /dm8/data/DM01/dmwatcher.ini

11.检查集群状态

查看归档状态

select * from v$arch_status; #均为VALID为正常

12.在第三个节点安装配置监视器

监视节点只需要数据库软件,不需要建实例

传送并修改dmmonitor.ini文件
(组名要与dmwatcher.ini中一致 GRP1)
OGUID需要与主备库一致
MON_DW_IP = 主库IP:5240
MON_DW_IP = 备库IP:5240

创建确认监视器和非确认监视器(配置文件第一行MON_DW_CONFIRM, 0为非确认监视器,1为确认监视器)

cp dmmonitor.ini dmmonitor_confirm.ini

启动确认监视器
在配置文件路径下执行$DM_HOME/bin/dmmonitor dmmonitor_confirm.ini

键入show查看状态

13.主备切换

在监视节点

启动非确认监视器 $DM_HOME/bin/dmmonitor dmmonitor.ini

查看符合接管条件的备库 choose switchover

在监视器上执行switchover
若有节点故障执行takeover

14.集群关闭和启动顺序

关闭:

确认监视器(exit)->备机数据守护(exit)->主机数据守护

启动顺序相反

14.注册服务

cd /dm8/script/root/

注册数据守护

主机 ./dm_service_installer.sh -t dmwatcher -p DMW01 -watcher_ini /dm8/data/DM01/dmwatcher.ini

备机 ./dm_service_installer.sh -t dmwatcher -p DMW02 -watcher_ini /dm8/data/DM01/dmwatcher.ini

注册monitor

监视节点 ./dm_service_installer.sh -t dmmonitor -p DMMON -monitor_ini /dm8/dmmonitor.ini

启动服务

使用root用户

cd /dm8/tool/

./dmservice.sh

或者使用systemctl start

评论
后发表回复

作者

文章

阅读量

获赞

扫一扫
联系客服