达梦共享集群(DMDSC)部署操作实践
一、集群架构及组件说明
1.1 节点说明
101、102数据库节点
111 共享存储节点
1.2 核心进程说明
| 进程名称 | 作用描述 | 对应文件 |
|---|---|---|
| dmserver | 数据库主服务进程 | dminit生成 |
| dmcss | 集群同步服务 | bin/dmcss |
| dmasm | ASM存储管理进程 | dmasmsvr |
| dmdcr | 分布式集群协调服务 | dmdcr.ini |
二、基础环境配置
2.1 服务器要求
# 配置项速查表
节点1: 172.23.240.101 hostname:dmdsc01
节点2: 172.23.240.102 hostname:dmdsc02
共享存储: 172.23.240.111
# 执行以下通用配置(双节点)
systemctl disable firewalld # 关闭防火墙
sed -i 's/SELINUX=enforcing/SELINUX=disabled/g' /etc/selinux/config # 禁用SELinux
systemctl stop firewalld # 立即生效
三、共享存储部署(Openfiler)
3.1 存储资源规划
注:以下操作在Openfiler服务器执行(IP:172.23.240.111)
逻辑卷划分优先级:
物理硬盘 → 物理卷(PV) → 卷组(VG:DM_CLUSTER) → 逻辑卷(LV)
Openfiler配置流程:
1. 添加新硬盘: /dev/sdb(容量≥5GB)
2. 创建物理卷:PV_DMSC
3. 创建卷组:VG_DMSC
4. 划分逻辑卷:
- dcr (1GB):存储DCR配置
- vtd (1GB):表决盘
- log (1GB):重做日志
- data (2GB):数据文件



































●DMDSC安装配置
●分别在101及102服务上传dmdcr_cfg.ini配置文件
DCR_N_GRP = 3
DCR_VTD_PATH = /dev/raw/raw2
DCR_OGUID = 63635
[GRP]
DCR_GRP_TYPE = CSS
DCR_GRP_NAME = GRP_CSS
DCR_GRP_N_EP = 2
DCR_GRP_DSKCHK_CNT = 60
[GRP_CSS]
DCR_EP_NAME = CSS0
DCR_EP_HOST = 172.23.240.101
DCR_EP_PORT = 9341
//CSS1 节点的信息
[GRP_CSS]
DCR_EP_NAME = CSS1
DCR_EP_HOST = 172.23.240.102
DCR_EP_PORT = 9343
[GRP]
DCR_GRP_TYPE = ASM
DCR_GRP_NAME = GRP_ASM
DCR_GRP_N_EP = 2
DCR_GRP_DSKCHK_CNT = 60
[GRP_ASM]
DCR_EP_NAME = ASM0
DCR_EP_SHM_KEY = 93360
DCR_EP_SHM_SIZE = 20
DCR_EP_HOST = 172.23.240.101
DCR_EP_PORT = 9349
DCR_EP_ASM_LOAD_PATH = /dev/raw
[GRP_ASM]
DCR_EP_NAME = ASM1
DCR_EP_SHM_KEY = 93361
DCR_EP_SHM_SIZE = 20
DCR_EP_HOST = 172.23.240.102
DCR_EP_PORT = 9351
DCR_EP_ASM_LOAD_PATH = /dev/raw
[GRP]
DCR_GRP_TYPE = DB
DCR_GRP_NAME = GRP_DSC
DCR_GRP_N_EP = 2
DCR_GRP_DSKCHK_CNT = 60
[GRP_DSC]
DCR_EP_NAME = DSC01
DCR_EP_SEQNO = 0
DCR_EP_PORT = 5236
DCR_CHECK_PORT = 9741
[GRP_DSC]
DCR_EP_NAME = DSC02
DCR_EP_SEQNO = 1
DCR_EP_PORT = 5236
DCR_CHECK_PORT = 9742
●在101服务器上使用 DMASMCMD 工具初始化所有磁盘
create dcrdisk '/dev/raw/raw1' 'DCR'
create votedisk '/dev/raw/raw2' 'VOTE'
create asmdisk '/dev/raw/raw4' 'DMDATA'
create asmdisk '/dev/raw/raw3' 'DMLOG'
init dcrdisk '/dev/raw/raw1' from '/home/dmdba/dmdcr_cfg.ini' identified by 'xxxxxxxx'
init votedisk '/dev/raw/raw2' from '/home/dmdba/dmdcr_cfg.ini'
●分别在101及102服务上传dmasvrmal.ini配置文件
[MAL_INST1]
MAL_INST_NAME= ASM0
MAL_HOST= 172.23.240.101
MAL_PORT= 4836
[MAL_INST2]
MAL_INST_NAME= ASM1
MAL_HOST= 172.23.240.102
MAL_PORT= 4837
●分别在101及102服务器上配置dmdcr.ini配置文件(101与102有所差异)
//101
DMDCR_PATH=/dev/raw/raw1
DMDCR_SEQNO=0
DMDCR_MAL_PATH=/home/dmdba/dmasvrmal.ini
DMDCR_ASM_RESTART_INTERVAL = 60
DMDCR_ASM_STARTUP_CMD = /dm8/bin/dmasmsvr dcr_ini=/home/dmdba/dmdcr.ini
DMDCR_DB_RESTART_INTERVAL = 60
DMDCR_DB_STARTUP_CMD = /dm8/bin/dmserver path=/dm8/dsc0_config/dm.ini dcr_ini=/home/dmdba/dmdcr.ini
//102
DMDCR_PATH=/dev/raw/raw1
DMDCR_SEQNO=1
DMDCR_MAL_PATH=/home/dmdba/dmasvrmal.ini
DMDCR_ASM_RESTART_INTERVAL = 60
DMDCR_ASM_STARTUP_CMD = /dm8/bin/dmasmsvr dcr_ini=/home/dmdba/dmdcr.ini
DMDCR_DB_RESTART_INTERVAL = 60
DMDCR_DB_STARTUP_CMD = /dm8/bin/dmserver path=/dm8/dsc1_config/dm.ini dcr_ini=/home/dmdba/dmdcr.ini
●在101及102上启动dmcss及dmasm服务程序
--启动CSS服务(双节点)
./dmcss dcr_ini=/home/dmdba/dmdcr.ini
--启动ASM服务(双节点)
./dmasmsvr dcr_ini=/home/dmdba/dmdcr.ini
●在101上面使用DMASMTOOL 工具创建 ASM 磁盘组
./dmasmtool dcr_ini=/home/dmdba/dmdcr.ini
#创建 DATA 磁盘组
CREATE DISKGROUP DMDATA asmdisk '/dev/raw/raw4'
#创建 LOG 磁盘组
CREATE DISKGROUP DMLOG asmdisk '/dev/raw/raw3'
●分别在101服务器上配置DMINIT.INI配置文件
system_path= +DMDATA/data
db_name= DSC
main= +DMDATA/data/dsc/main.dbf
main_size= 128
roll = +DMDATA/data/dsc/roll.dbf
roll_size= 128
system = +DMDATA/data/dsc/system.dbf
system_size= 128
ctl_path = +DMDATA/data/dsc/dm.ctl
ctl_size = 8
log_size = 256
dcr_path = /dev/raw/raw1
dcr_seqno = 0
auto_overwrite=1
SYSDBA_PWD=XXXXX
SYSAUDITOR_PWD=XXXXX
[DSC01]
config_path = /dm8/dsc0_config
port_num = 5236
mal_host = 172.23.240.101
mal_port = 9340
log_path = +DMDATA/log/log101.log
log_path = +DMDATA/log/log102.log
[DSC02]
config_path = /dm8/dsc1_config
port_num = 5236
mal_host = 172.23.240.102
mal_port = 9341
log_path = +DMDATA/log/log201.log
log_path = +DMDATA/log/log202.log
●101上新建实例
./dminit control=/home/dmdba/dminit.ini
●将101上dsc1_config放到102/dm8下

scp -r dsc1_config/ dmdba@172.23.240.102:/dm8/
●启动101及102数据库
./dmserver dcr_ini=/home/dmdba/dmdcr.ini /dm8/dsc0_config/dm.ini
./dmserver dcr_ini=/home/dmdba/dmdcr.ini /dm8/dsc1_config/dm.ini
●在101服务器上配置监视器
CSSM_OGUID = 63635
CSSM_CSS_IP = 172.23.240.101:9341
CSSM_CSS_IP = 172.23.240.102:9343
CSSM_LOG_PATH =/dm8/log #监视器日志文件存放路径
CSSM_LOG_FILE_SIZE = 32 #每个日志文件最大 32M
CSSM_LOG_SPACE_LIMIT = 0 #不限定日志文件总占用空间
●创建监视器DMCSSM日志路径
mkdir /dm8/log
●启动DMSCCM(监视器可部署独立机子)
./dmcssm ini_path=/home/dmdba/dmcssm.ini
●检查搭建情况
select * from v$dsc_ep_info;
更加专业的技术文章可去达梦社区查看:https://eco.dameng.com最后修改时间:2025-02-18 14:34:07
「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。




