注册
达梦数据库DM8数据守护集群搭建
技术分享/ 文章详情 /

达梦数据库DM8数据守护集群搭建

🌊Amaharashi 2026/07/31 129 0 0

达梦守护集群由主库、备库、守护进程组成,依靠日志同步保证主备数据一致。守护进程实时监控实例状态,主库故障时可自动切换备库接管业务。

实验环境

操作系统:银河麒麟服务器操作系统V10;
数据库软件:达梦数据库DM8;
虚拟平台:VMware Workstation Pro;
CPU架构:x86_64。

集群规划

image.png

安装流程

基础环境准备

创建用户和目录

创建用户组
groupadd dinstall
创建dmdba用户
useradd -g dinstall -m -d /home/dmdba -s /bin/bash dmdba
设置密码
echo “dmdba:Sysdba123” | chpasswd
创建数据目录
mkdir -p /dmdata/data/
mkdir -p /dmdata/data/DAMENG/arch
mkdir -p /dmdata/data/DAMENG/bak
mkdir -p /dmdata/data/DAMENG/malpath
授权
chown -R dmdba:dinstall /dmdata
chmod -R 755 /dmdata

配置网络

业务网卡(ens33)
nmcli connection modify ens33 ipv4.addresses 172.20.10.100/24 # A机器
nmcli connection modify ens33 ipv4.addresses 172.20.10.2/24 # B机器
nmcli connection modify ens33 ipv4.gateway 172.20.10.3
nmcli connection modify ens33 ipv4.dns 8.8.8.8
nmcli connection modify ens33 ipv4.method manual
nmcli connection up ens33
心跳网卡(ens36)
nmcli connection add type ethernet ifname ens36 con-name ens36
nmcli connection modify ens36 ipv4.addresses 192.168.1.1/24 # A机器
nmcli connection modify ens36 ipv4.addresses 192.168.1.2/24 # B机器
nmcli connection modify ens36 ipv4.method manual
nmcli connection up ens36

主库配置

初始化实例

在dmdba用户下,进入到bin目录下,执行以下初始化实例命令:
./dminit path=/dmdata/data INSTANCE_NAME=GRP1_RT_01
PAGE_SIZE=32 EXTENT_SIZE=32 LOG_SIZE=2048
SYSDBA_PWD=Sysdba123 SYSAUDITOR_PWD=Sysdba123
image.png

启动数据库并开启归档

前台启动
./dmserver /dmdata/data/DAMENG/dm.ini
另开终端连接disql
./disql SYSDBA/Sysdba123@172.20.10.100:5236
image.png
image.png

配置文件

dmmal.ini:MAL系统配置文件,实例间通信配置;
dmarch.ini:归档配置文件,配置本地/实时归档;
dmwatcher.ini:守护进程配置文件。
image.png
image.png

注册服务

cd /home/dmdba/dmdbms/log2/script/root/./dm_service_installer.sh -t dmserver -dm_ini /dmdata/data/DAMENG/dm.ini -p GRP1_RT_01 -m mount./dm_service_installer.sh -t dmwatcher -p Watcher -watcher_ini /dmdata/data/DAMENG/dmwatcher.ini

拷贝到备库

scp -r /dmdata/data/DAMENG/bak/BACKUP_FILE dmdba@172.20.10.2:/dmdata/data/bak/
image.png

备库配置

初始化实例

在dmdba用户下,进入到bin目录下,执行以下初始化实例命令:
./dminit path=/dmdata/data INSTANCE_NAME=GRP1_RT_02 \ PAGE_SIZE=32 EXTENT_SIZE=32 LOG_SIZE=2048 \ SYSDBA_PWD=Sysdba123 SYSAUDITOR_PWD=Sysdba123
image.png

恢复数据

还原
./dmrman CTLSTMT=“RESTORE DATABASE ‘/dmdata/data/DAMENG/dm.ini’ FROM BACKUPSET
‘/dmdata/data/bak/BACKUP_FILE’”
恢复
./dmrman CTLSTMT=“RECOVER DATABASE ‘/dmdata/data/DAMENG/dm.ini’ FROM BACKUPSET ‘/dmdata/data/bak/BACKUP_FILE’”
更新DB_MAGIC
./dmrman CTLSTMT=“RECOVER DATABASE ‘/dmdata/data/DAMENG/dm.ini’ UPDATE DB_MAGIC”
image.png
image.png

配置文件

与主库类似,但注意:
dm.ini:INSTANCE_NAME = GRP1_RT_02
dmarch.ini:ARCH_DEST = GRP1_RT_01
image.png

注册服务

cd /home/dmdba/dmdbms/log2/script/root/./dm_service_installer.sh -t dmserver -dm_ini /dmdata/data/DAMENG/dm.ini -p GRP1_RT_02 -m mount./dm_service_installer.sh -t dmwatcher -p Watcher -watcher_ini /dmdata/data/DAMENG/dmwatcher.ini
image.png

启动服务并配置主备模式

启动主库并配置

A机器
./DmServiceGRP1_RT_01 start
./disql SYSDBA/Sysdba123@172.20.10.100:5236
SP_SET_PARA_VALUE(1,‘ALTER_MODE_STATUS’,1);
SP_SET_OGUID(45331);
ALTER DATABASE PRIMARY;
SP_SET_PARA_VALUE(1,‘ALTER_MODE_STATUS’,0);
image.png

启动备库并配置

B机器
./DmServiceGRP1_RT_02 start
./disql SYSDBA/Sysdba123@172.20.10.2:5236
SP_SET_PARA_VALUE(1,‘ALTER_MODE_STATUS’,1);
SP_SET_OGUID(45331);
ALTER DATABASE STANDBY;
SP_SET_PARA_VALUE(1,‘ALTER_MODE_STATUS’,0);
image.png

启动守护进程

/home/dmdba/dmdbms/log2/bin/DmWatcherServiceWatcher start
image.png

配置监视器

MON_DW_CONFIRM = 1
MON_LOG_PATH = /home/dmdba/dmdbms/log2/log
MON_LOG_INTERVAL = 60
MON_LOG_FILE_SIZE = 512
MON_LOG_SPACE_LIMIT = 2048
[GRP1]
MON_INST_OGUID = 45331
MON_DW_IP = 192.168.1.1:5436
MON_DW_IP = 192.168.1.2:5436
image.png
启动监视器:
./dmmonitor /home/dmdba/dmdbms/log2/bin/dmmonitor.ini
输入show,查看集群状态。
image.png
image.png

主备切换测试

[monitor] login
用户名:SYSDBA
密码:Sysdba123
[monitor] switchover GRP1.GRP1_RT_02
image.png

评论
后发表回复

作者

文章

阅读量

获赞

扫一扫
联系客服