达梦数据库-读写分离集群部署
目录
一、读写分离集群概述
在数据库高可用架构设计中,读写分离是提升系统并发处理能力的重要手段。达梦数据库读写分离集群(DMRWC)基于成熟的数据守护(Data Watch)技术,实现了事务级实时同步与读写请求自动分发。本文将以DM8版本为基础,详细讲解读写分离集群的部署过程,并对比主备集群的异同。
二、读写分离 vs 主备集群
| 特性 | 主备集群 | 读写分离集群 |
|---|---|---|
| 架构模式 | 一主多备 | 一主多读 |
| 主要目的 | 高可用、故障切换 | 负载均衡、提升读性能 |
| 数据流向 | 主->备单向同步 | 主->备同步,读请求分发 |
| 默认归档类型 | 实时归档(REALTIME) | 即时归档(TIMELY) |
| 节点角色 | Primary/Standby | Primary/Read Instance |
| 适用场景 | 金融交易、核心业务 | 报表分析、读多写少场景 |
三、环境规划
| 配置项 | A机器(主节点) | B机器(从节点1) | C机器(从节点2) |
|---|---|---|---|
| 心跳 IP | 192.168.220.130 | 192.168.220.131 | 192.168.220.132 |
| 实例名 | DM_01 | DM_02 | DM_03 |
| 实例端口 | 5236 | 5236 | 5236 |
| MAL 端口 | 5336 | 5336 | 5336 |
| MAL 守护进程端口 | 5436 | 5436 | 5436 |
| 守护进程端口 | 5536 | 5536 | 5536 |
| OGUID | 45331 | 45331 | 45331 |
| 守护组 | GRP1 | GRP1 | GRP1 |
| 安装目录 | /home/dmdba/dmdbms | /home/dmdba/dmdbms | /home/dmdba/dmdbms |
| 实例目录 | /home/dmdba/dmdbms/data | /home/dmdba/dmdbms/data | /home/dmdba/dmdbms/data |
| 归档上限 | 51200 | 51200 | 51200 |
确认监视器直接使用:192.168.220.132。
说明:读写分离集群与数据守护集群架构基本类似。此外,搭建过程中具体规划及部署方式以现场环境为准。
三、安装与配置
具体流程参考达梦数据库-单机部署的Linux环境单机部署章节。
3.1数据库安装(三台机器均需要安装)
#挂载ISO镜像
mount -o loop /usr/dm8_20250122_x86_rh7_64.iso /mnt
#安装数据库
su dmdba
cd /mnt
./DMInstall.bin -i
3.2初始化A机器实例
(密码需要自行替换,并符合密码强度规则)
cd /home/dmdba/dmdbms/bin
./dminit path=/home/dmdba/dmdbms/data/ PAGE_SIZE=32 EXTENT_SIZE=32 CASE_SENSITIVE=Y DB_NAME=DM INSTANCE_NAME=DM_01 PORT_NUM=5236 BUFFER=2048 SYSDBA_PWD=******** SYSAUDITOR_PWD=********
执行完成反馈结果如下图所示:

3.3初始化B机器实例
(密码需要自行替换,并符合密码强度规则)
cd /home/dmdba/dmdbms/bin
./dminit path=/home/dmdba/dmdbms/data/ PAGE_SIZE=32 EXTENT_SIZE=32 CASE_SENSITIVE=Y DB_NAME=DM INSTANCE_NAME=DM_02 PORT_NUM=5236 BUFFER=2048 SYSDBA_PWD=******** SYSAUDITOR_PWD=********
执行完成反馈结果如下图所示:

3.4初始化C机器实例
(密码需要自行替换,并符合密码强度规则)
cd /home/dmdba/dmdbms/bin
./dminit path=/home/dmdba/dmdbms/data/ PAGE_SIZE=32 EXTENT_SIZE=32 CASE_SENSITIVE=Y DB_NAME=DM INSTANCE_NAME=DM_03 PORT_NUM=5236 BUFFER=2048 SYSDBA_PWD=******** SYSAUDITOR_PWD=********
执行完成反馈结果如下图所示:

3.5主节点注册服务
su root
cd /home/dmdba/dmdbms/script/root
./dm_service_installer.sh -t dmserver -dm_ini /home/dmdba/dmdbms/data/DM/dm.ini -p DMSERVER
创建服务成功会显示:创建服务(DmServiceDMSERVER)完成
创建成功后启动服务
systemctl start DmServiceDMSERVER.service
注意:
三台机器需要关闭防火墙。
systemctl stop firewalld
systemctl disable firewalld
3.6配置主节点参数
- 修改 dm.ini
vi /home/dmdba/dmdbms/data/DM/dm.ini
#configuration file
MAL_INI = 1 #dmmal.ini
ARCH_INI = 1 #dmarch.ini
#data watch
ALTER_MODE_STATUS = 0 #Whether to permit database user to alter database mode
ENABLE_OFFLINE_TS = 2 #Whether tablespace can be offline
- 创建 dmarch.ini
vi /home/dmdba/dmdbms/data/DM/dmarch.ini
#DaMeng Database Archive Configuration file
#0:高性能,1:事务一致
ARCH_WAIT_APPLY = 0
[ARCHIVE_LOCAL]
#本地归档类型
ARCH_TYPE = LOCAL
#本地归档存放路径
ARCH_DEST = /home/dmdba/dmdbms/data/DM/arch
ARCH_FILE_SIZE = 1024
ARCH_SPACE_LIMIT = 51200

最低0.47元/天 解锁文章
3171

被折叠的 条评论
为什么被折叠?



