注册
达梦双节点读写分离集群教程
技术分享/ 文章详情 /

达梦双节点读写分离集群教程

DM_005987 2025/10/24 42 0 0

DM单机搭建

安装的环境是arm架构,因此选用的是飞腾版本的安装包,虚拟机中已经有默认用户

1.规划安装目录

mkdir /dm8

2.挂载iso镜像文件

mkdir /mnt/dm mount /dm8_20250527_FTarm2000_kylin10_sp1_64.iso /mnt/dm

3.安装DM8

cd /mnt/dm ./DMInstall.bin -i

4.注册dmap服务

sudo /home/gc/dm8/script/root/root_installer.sh

5.初始化数据库

./dminit path=/home/gc/dm8/data/ SYSDBA_PWD=Dameng123 SYSAUDITOR_PWD=Dameng123 LOG_SIZE=256

6.启停数据库

./dmserver /home/gc/dm8/data/DAMENG/dm.ini

DM读写分离集群搭建

1.按照DM单机搭建教程完成主备节点

2.备份还原

主库备份,将生成的DAMENG复制到备节点上

./dmrman ctlstmt="BACKUP DATABASE '/home/gc/dm8/data/DAMENG/dm.ini' FULL TO BACKUP_FILE1 BACKUPSET '/home/gc/back/DAMENG'"

备库数据库还原

./dmrman ctlstmt="RESTORE DATABASE '/home/gc/dm8/data/DAMENG/dm.ini' FROM BACKUPSET '/home/gc/DAMENG'"

备库更新

./dmrman ctlstmt="RECOVER DATABASE '/home/gc/dm8/data/DAMENG/dm.ini' UPDATE DB_MAGIC"

3.配置主库

修改dm.ini文件

INSTANCE_NAME = GRP1_RW_01 ALTER_MODE_STATUS = 0 ENABLE_OFFLINE_TS = 2 MAL_INI = 1 ARCH_INI = 1

配置dmmal.ini文件,其中ip地址替换为自己的实际节点的ip地址

MAL_CHECK_INTERVAL = 5 MAL_CONN_FAIL_INTERVAL = 5 [MAL_INST1] MAL_INST_NAME = GRP1_RW_01 MAL_HOST = 176.16.255.132 MAL_PORT = 5237 MAL_INST_HOST = 176.16.255.132 MAL_INST_PORT = 5236 MAL_DW_PORT = 5238 MAL_INST_DW_PORT= 5239 [MAL_INST2] MAL_INST_NAME = GRP1_RW_02 MAL_HOST = 176.16.255.133 MAL_PORT = 5237 MAL_INST_HOST = 176.16.255.133 MAL_INST_PORT = 5236 MAL_DW_PORT = 5238 MAL_INST_DW_PORT= 5239

配置dmarch.ini文件,替换对应的路径

ARCH_WAIT_APPLY = 1 [ARCHIVE_TIMELY1] ARCH_TYPE = TIMELY ARCH_DEST = GRP1_RW_02 [ARCHIVE_LOCAL1] ARCH_TYPE = LOCAL ARCH_DEST = /home/gc/dm8/data/DAMENG/arch ARCH_FILE_SIZE = 128 ARCH_SPACE_LIMIT= 0

配置dmwatcher.ini文件,替换相应的路径

[GRP1] DW_TYPE = GLOBAL DW_MODE = MANUAL DW_ERROR_TIME = 10 INST_RECOVER_TIME = 60 INST_ERROR_TIME = 10 INST_OGUID = 453331 INST_INI = /home/gc/dm8/data/DAMENG/dm.ini INST_AUTO_restart = 1 INST_STARTUP_CMD = /home/gc/dm8/bin/dmserver RLOG_SEND_THRESHOLD = 0 RLOG_APPLY_THRESHOLD = 0

使用mount方式启动数据库

./dmserver /home/gc/dm8/data/DAMENG/dm.ini mount

登录主库,设置OGUID,修改数据库模式

SQL>SP_SET_PARA_VALUE(1, 'ALTER_MODE_STATUS', 1); SQL>sp_set_oguid(453331); SQL>alter database primary; SQL>SP_SET_PARA_VALUE(1, 'ALTER_MODE_STATUS', 0);

4.配置备库

修改dm.ini文件

INSTANCE_NAME = GRP1_RW_02 ALTER_MODE_STATUS = 0 ENABLE_OFFLINE_TS = 2 MAL_INI = 1 ARCH_INI = 1

配置dmmal.ini文件,替换相应的ip地址

MAL_CHECK_INTERVAL = 5 MAL_CONN_FAIL_INTERVAL = 5 [MAL_INST1] MAL_INST_NAME = GRP1_RW_01 MAL_HOST = 176.16.255.132 MAL_PORT = 5237 MAL_INST_HOST = 176.16.255.132 MAL_INST_PORT = 5236 MAL_DW_PORT = 5238 MAL_INST_DW_PORT= 5239 [MAL_INST2] MAL_INST_NAME = GRP1_RW_02 MAL_HOST = 176.16.255.133 MAL_PORT = 5237 MAL_INST_HOST = 176.16.255.133 MAL_INST_PORT = 5236 MAL_DW_PORT = 5238 MAL_INST_DW_PORT= 5239

配置dmarch.ini文件,替换相应的路径

ARCH_WAIT_APPLY = 1 [ARCHIVE_TIMELY1] ARCH_TYPE = TIMELY ARCH_DEST = GRP1_RW_01 [ARCHIVE_LOCAL1] ARCH_TYPE = LOCAL ARCH_DEST = /home/gc/dm8/data/DAMENG/arch ARCH_FILE_SIZE = 128 ARCH_SPACE_LIMIT= 0

配置dmwatcher.ini文件,替换相应的路径

[GRP1] DW_TYPE = GLOBAL DW_MODE = MANUAL DW_ERROR_TIME = 10 INST_RECOVER_TIME = 60 INST_ERROR_TIME = 10 INST_OGUID = 453332 INST_INI = /home/gc/dm8/data/DAMENG/dm.ini INST_AUTO_restart = 1 INST_STARTUP_CMD = /home/gc/dm8/bin/dmserver RLOG_SEND_THRESHOLD = 0 RLOG_APPLY_THRESHOLD = 0

以mount方式启动备库

./dmserver /home/gc/dm8/data/DAMENG/dm.ini mount

登录,设置OGUID,修改数据库模式

SQL>SP_SET_PARA_VALUE(1, 'ALTER_MODE_STATUS', 1); SQL>sp_set_oguid(453331); SQL>alter database standby; SQL>SP_SET_PARA_VALUE(1, 'ALTER_MODE_STATUS', 0);

5.配置监视器(直接在主节点上配置)

修改 dmmonitor.ini 配置确认监视器,其中 MON_DW_IP 中的 IP 和 PORT 和 dmmal.ini 中的 MAL_HOST 和 MAL_DW_PORT 配置项保持一致。

MON_DW_Confirm = 1 ##确认监视器模式 MON_LOG_PATH = /home/gc/dm8/data/log ##监视器日志文件存放路径 MON_LOG_INTERVAL = 60 ##每隔60s定时记录系统信息到日志文件 MON_LOG_FILE_SIZE = 32 ##每个日志文件最大32M MON_LOG_SPACE_LIMIT = 0 ##不限定日志文件总占用空间 [GRP1] MON_INST_OGUID = 453332 ##组GRP1的唯一OGUID值 ##以下配置为监视器到组GRP1的守护进程的连接信息,以“IP:PORT”的形式配置 ##IP对应dmmal.ini中的MAL_HOST,PORT对应dmmal.ini中的MAL_DW_PORT MON_DW_IP = 176.16.255.132:52141 MON_DW_IP = 176.16.255.133:52142

6.启动主备库上的守护进程

./dmwatcher /home/gc/dm8/data/DAMENG/dmwatcher.ini

7.在主库上启动监视器

./dmmonitor /home/gc/dm8/data/dmmonitor.ini

8.观察输出

读写分离集群搭建(两个节点).png

评论
后发表回复

作者

文章

阅读量

获赞

扫一扫
联系客服