注册
DPC部署总结
培训园地/ 文章详情 /

DPC部署总结

Mr.Zhang 2025/09/30 17 0 0

DMDPC单机、多副本架构部署

[TOC]

[!important]

sp计算节点,无副本,可部署多个raft组,每个raft组最多一个成员;

bp存储节点,可部署多个raft组,各组数据不同;单机架构每组一个成员;多副本架构时每个raft组是一套主备,主+备成员数量为大于1的奇数;

mp元数据节点,无raft组,只有一套数据,可配置多个副本实例,多副本时总数量同样为大于1的奇数;

[!NOTE]

此例完全参考官方文档《DM8分布计算集群.pdf》;

一个最小的 DMDPC 集群包含一个 BP、一个 SP 和一个 MP。但至少需要两台 BP 才方便看出子任务的各种计划形态和调度;

此例以全部节点部署在单台服务器上为例,多台服务器时可分别部署或交叉部署,ip和端口号按实际情况修改;

此例为2组sp,2组bp+每组2副本,mp+2副本,单机架构或其他副本数量可根据实际情况和本文提示进行修改

检查端口占用情况netstat -tuln | grep 52 netstat -tuln | grep 60

BP组名 RAFT 组名 角 色 实例名称 外部IP 内部IP PORT _NUM AP_PORT _NUM MP_PORT 初始化路径 软件目录
SP_RAFT_1 SP SP1 192.168.3.88 192.168.3.88 5236 6000 /opt/dmdata/sp1 /opt/dmdbms
SP_RAFT_2 SP SP2 192.168.3.88 192.168.3.88 5237 6001 /opt/dmdata/sp2 /opt/dmdbms
BG_1 BP_RAFT_1 BP BP11 192.168.3.88 192.168.3.88 5238 6002 /opt/dmdata/bp11 /opt/dmdbms
BG_1 BP_RAFT_1 BP BP12 192.168.3.88 192.168.3.88 5239 6003 /opt/dmdata/bp12 /opt/dmdbms
BG_1 BP_RAFT_1 BP BP13 192.168.3.88 192.168.3.88 5240 6004 /opt/dmdata/bp13 /opt/dmdbms
BG_1 BP_RAFT_2 BP BP21 192.168.3.88 192.168.3.88 5241 6005 /opt/dmdata/bp21 /opt/dmdbms
BG_1 BP_RAFT_2 BP BP22 192.168.3.88 192.168.3.88 5242 6006 /opt/dmdata/bp22 /opt/dmdbms
BG_1 BP_RAFT_2 BP BP23 192.168.3.88 192.168.3.88 5243 6007 /opt/dmdata/bp23 /opt/dmdbms
MP MP1 192.168.3.88 192.168.3.88 5244 6008 9000 /opt/dmdata/mp1 /opt/dmdbms
MP MP2 192.168.3.88 192.168.3.88 5245 6009 9001 /opt/dmdata/mp2 /opt/dmdbms
MP MP3 192.168.3.88 192.168.3.88 5246 6010 9002 /opt/dmdata/mp3 /opt/dmdbms

系统配置和软件安装

各主机都需要先安装达梦数据库软件,可参考任意部署文档,略

初始化各实例

#ap_port_num 分布式环境下协同工作的监听端口 #dpc_mode DPC集群中的实例角色 # sp节点库(2个) [dmdba@localhost opt]$ /opt/dmdbms/bin/dminit path=/opt/dmdata/sp1 log_size=2048 extent_size=32 page_size=32 instance_name=SP1 port_num=5236 ap_port_num=6000 dpc_mode=SP [dmdba@localhost opt]$ /opt/dmdbms/bin/dminit path=/opt/dmdata/sp2 log_size=2048 extent_size=32 page_size=32 instance_name=SP2 port_num=5237 ap_port_num=6001 dpc_mode=SP # bp节点库(2组,每组2副本) # 1组 [dmdba@localhost opt]$ /opt/dmdbms/bin/dminit path=/opt/dmdata/bp11 log_size=2048 extent_size=32 page_size=32 instance_name=BP11 port_num=5238 ap_port_num=6002 dpc_mode=BP [dmdba@localhost opt]$ /opt/dmdbms/bin/dminit path=/opt/dmdata/bp12 log_size=2048 extent_size=32 page_size=32 instance_name=BP12 port_num=5239 ap_port_num=6003 dpc_mode=BP [dmdba@localhost opt]$ /opt/dmdbms/bin/dminit path=/opt/dmdata/bp13 log_size=2048 extent_size=32 page_size=32 instance_name=BP13 port_num=5240 ap_port_num=6004 dpc_mode=BP # 2组 [dmdba@localhost opt]$ /opt/dmdbms/bin/dminit path=/opt/dmdata/bp21 log_size=2048 extent_size=32 page_size=32 instance_name=BP21 port_num=5241 ap_port_num=6005 dpc_mode=BP [dmdba@localhost opt]$ /opt/dmdbms/bin/dminit path=/opt/dmdata/bp22 log_size=2048 extent_size=32 page_size=32 instance_name=BP22 port_num=5242 ap_port_num=6006 dpc_mode=BP [dmdba@localhost opt]$ /opt/dmdbms/bin/dminit path=/opt/dmdata/bp23 log_size=2048 extent_size=32 page_size=32 instance_name=BP23 port_num=5243 ap_port_num=6007 dpc_mode=BP # mp节点库(2副本) [dmdba@localhost opt]$ /opt/dmdbms/bin/dminit path=/opt/dmdata/mp1 log_size=2048 extent_size=32 page_size=32 instance_name=MP1 port_num=5244 ap_port_num=6008 dpc_mode=MP [dmdba@localhost opt]$ /opt/dmdbms/bin/dminit path=/opt/dmdata/mp2 log_size=2048 extent_size=32 page_size=32 instance_name=MP2 port_num=5245 ap_port_num=6009 dpc_mode=MP [dmdba@localhost opt]$ /opt/dmdbms/bin/dminit path=/opt/dmdata/mp3 log_size=2048 extent_size=32 page_size=32 instance_name=MP3 port_num=5246 ap_port_num=60010 dpc_mode=MP

配置 mp.ini 文件

# 所有实例此文件内容相同,放到dm.ini同路径下,以sp1为例 # mp单实例时配置 [dmdba@localhost opt]$ cat > /opt/dmdata/sp1/DAMENG/mp.ini << 'EOF' mp_host = 192.168.3.88 #mp实例的ip地址 mp_port = 9000 #mp实例的监听端口号;与 MP、 BP 和 SP 上的 ap_port_num 不冲突的端口号 EOF # mp多副本时配置 [dmdba@localhost opt]$ cat > /opt/dmdata/sp1/DAMENG/mp.ini << 'EOF' [MP1] mp_host = 192.168.3.88 #mp实例的ip地址 mp_port = 9000 #mp实例的监听端口号;与 MP、 BP 和 SP 上的 ap_port_num 不冲突的端口号 [MP2] mp_host = 192.168.3.88 #mp实例的ip地址 mp_port = 9001 #mp实例的监听端口号;与 MP、 BP 和 SP 上的 ap_port_num 不冲突的端口号 [MP3] mp_host = 192.168.3.88 #mp实例的ip地址 mp_port = 9002 #mp实例的监听端口号;与 MP、 BP 和 SP 上的 ap_port_num 不冲突的端口号 EOF

启动mp1,将各实例加入集群???sp的status设2吗

[!NOTE]

只有在注册当前登录MP节点后,才可以注册其余节点。后续增加MP、SP节点和BP节点无先后之分

将SP和BP节点加入DMDPC集群中的步骤必须在SP、BP第一次启动前完成

# 启动mp1节点,登录并执行注册命令 [dmdba@localhost ~]$ /opt/dmdbms/bin/dmserver /opt/dmdata/mp1/DAMENG/dm.ini dpc_mode=MP [dmdba@localhost ~]$ /opt/dmdbms/bin/disql SYSDBA/SYSDBA:5244 # 注册一个BP/SP/MP实例 # SP_CREATE_DPC_INSTANCE(RAFT_NAME,INST_NAME,DPC_MODE,AP_PORT,INST_PORT,IP_ADDR,IP_INTER,IP_EXTER,SYS_MODE,STATUS,DESC) # 单机架构时SYS_MODE,STATUS配置为'NORMAL',1 # 多副本架构SYS_MODE,STATUS配置为'STANDBY',2,实例启动后在RAFT组内选举出有效主库,自动更新MP中的模式状态信息 # 注册mp实例(2副本) # mp的RAFT组名可以指定为'MP_RAFT'或缺省NULL SP_CREATE_DPC_INSTANCE(NULL,'MP1','MP',6008,5244,'192.168.3.88','192.168.3.88','STANDBY',0,'MP instance'); SP_CREATE_DPC_INSTANCE(NULL,'MP2','MP',6009,5245,'192.168.3.88','192.168.3.88','STANDBY',0,'MP instance'); SP_CREATE_DPC_INSTANCE(NULL,'MP3','MP',6010,5246,'192.168.3.88','192.168.3.88','STANDBY',0,'MP instance'); # 注册bp实例(2组,每组2副本) # 1.注册RAFT组BP_RAFT_1、BP_RAFT_2() SP_CREATE_DPC_RAFT('BP','BP_RAFT_1'); SP_CREATE_DPC_RAFT('BP','BP_RAFT_2'); # 2.在组内注册BP实例 # BP_RAFT_1组 SP_CREATE_DPC_INSTANCE('BP_RAFT_1','BP11','BP',6002,5238,'192.168.3.88','192.168.3.88','STANDBY',0,'BP instance'); SP_CREATE_DPC_INSTANCE('BP_RAFT_1','BP12','BP',6003,5239,'192.168.3.88','192.168.3.88','STANDBY',0,'BP instance'); SP_CREATE_DPC_INSTANCE('BP_RAFT_1','BP13','BP',6004,5240,'192.168.3.88','192.168.3.88','STANDBY',0,'BP instance'); # BP_RAFT_2组 SP_CREATE_DPC_INSTANCE('BP_RAFT_2','BP21','BP',6005,5241,'192.168.3.88','192.168.3.88','STANDBY',0,'BP instance'); SP_CREATE_DPC_INSTANCE('BP_RAFT_2','BP22','BP',6006,5242,'192.168.3.88','192.168.3.88','STANDBY',0,'BP instance'); SP_CREATE_DPC_INSTANCE('BP_RAFT_2','BP23','BP',6007,5243,'192.168.3.88','192.168.3.88','STANDBY',0,'BP instance'); # 3.注册一个BP组BG_1并在组内添加 RAFT 组 SP_CREATE_DPC_BP_GROUP('BG_1','bp group1'); SP_BP_GROUP_ADD_RAFT('BG_1','BP_RAFT_1'); SP_BP_GROUP_ADD_RAFT('BG_1','BP_RAFT_2'); # 注册sp实例(两组) # 1.增加SP也要注册RAFT组,SP类型的RAFT组中最多只能加入一个SP节点 SP_CREATE_DPC_RAFT('SP','SP_RAFT_1'); SP_CREATE_DPC_RAFT('SP','SP_RAFT_2'); # 2.在组内注册SP实例 SP_CREATE_DPC_INSTANCE('SP_RAFT_1','SP1','SP',6000,5236,'192.168.3.88','192.168.3.88','NORMAL',1,'SP instance'); SP_CREATE_DPC_INSTANCE('SP_RAFT_2','SP2','SP',6001,5237,'192.168.3.88','192.168.3.88','NORMAL',1,'SP instance'); # 检查是否能查询到相关信息 select * from DPC_BP_GROUP; # 记录系统中注册的每个 BP 组信息 select * from DPC_BP_RAFT; # 记录系统中注册的每个 RAFT 组信息 select * from DPC_INSTANCE; # 记录系统中所有实例对象信息

配置mp多副本,单机可忽略

备份mp1

退出刚才注册服务时启动的mp1,并进行备份

dmrman ctlstmt="backup database '/opt/dmdata/mp1/DAMENG/dm.ini' full backupset '/opt/fullbak_mp'"

还原备份

# 还原备份 # mp2 [dmdba@localhost ~]$ dmrman ctlstmt="restore database '/opt/dmdata/mp2/DAMENG/dm.ini' from backupset '/opt/fullbak_mp'" [dmdba@localhost ~]$ dmrman ctlstmt="recover database '/opt/dmdata/mp2/DAMENG/dm.ini' from backupset '/opt/fullbak_mp'" [dmdba@localhost ~]$ dmrman ctlstmt="recover database '/opt/dmdata/mp2/DAMENG/dm.ini' update db_magic" # mp3 [dmdba@localhost ~]$ dmrman ctlstmt="restore database '/opt/dmdata/mp3/DAMENG/dm.ini' from backupset '/opt/fullbak_mp'" [dmdba@localhost ~]$ dmrman ctlstmt="recover database '/opt/dmdata/mp3/DAMENG/dm.ini' from backupset '/opt/fullbak_mp'" [dmdba@localhost ~]$ dmrman ctlstmt="recover database '/opt/dmdata/mp3/DAMENG/dm.ini' update db_magic"

配置归档

# 修改dm.ini,所有节点相同 [dmdba@localhost ~]$ vi /opt/dmdata/mp1/DAMENG/dm.ini ARCH_INI = 1 #打开归档配置 ALTER_MODE_STATUS = 0 #不允许用户直接通过 SQL 语句修改服务器模式 # vi /opt/dmdata/mp2/DAMENG/dm.ini # vi /opt/dmdata/mp3/DAMENG/dm.ini # 编辑dmarch.ini # mp1 [dmdba@localhost ~]$ cat > /opt/dmdata/mp1/DAMENG/dmarch.ini <<'EOF' XMAL_HB_INTERVAL = 5 #节点通信检测间隔 RAFT_HB_INTERVAL = 150 #选举心跳间隔 RAFT_VOTE_INTERVAL = 1500 #选举超时时间,三个库设置不同以尽快选出主库 RAFT_SELF_ID = 1 #多副本自身节点 ID [ARCHIVE_LOCAL1] ARCH_TYPE = LOCAL #本地归档类型 ARCH_DEST = /opt/dmdata/mp1/DAMENG/arch #本地归档文件路径 ARCH_FILE_SIZE = 2048 #本地单个归档文件最大值,单位 MB ARCH_SPACE_LIMIT = 40960 #本地归档文件总大小,0 表示无限制 [ARCHIVE_RAFT1] ARCH_TYPE = RAFT #RAFT 归档 ARCH_DEST = MP2 #归档目标实例名 ARCH_DEST_ID = 2 #归档目标多副本节点 ID [ARCHIVE_RAFT2] ARCH_TYPE = RAFT #RAFT 归档 ARCH_DEST = MP3 #归档目标实例名 ARCH_DEST_ID = 3 #归档目标多副本节点 ID EOF # mp2 [dmdba@localhost ~]$ cat > /opt/dmdata/mp2/DAMENG/dmarch.ini <<'EOF' XMAL_HB_INTERVAL = 5 #节点通信检测间隔 RAFT_HB_INTERVAL = 150 #选举心跳间隔 RAFT_VOTE_INTERVAL = 2000 #选举超时时间,三个库设置不同以尽快选出主库 RAFT_SELF_ID = 2 #多副本自身节点 ID [ARCHIVE_LOCAL1] ARCH_TYPE = LOCAL #本地归档类型 ARCH_DEST = /opt/dmdata/mp2/DAMENG/arch #本地归档文件路径 ARCH_FILE_SIZE = 2048 #本地单个归档文件最大值,单位 MB ARCH_SPACE_LIMIT = 40960 #本地归档文件总大小,0 表示无限制 [ARCHIVE_RAFT1] ARCH_TYPE = RAFT #RAFT 归档 ARCH_DEST = MP1 #归档目标实例名 ARCH_DEST_ID = 1 #归档目标多副本节点 ID [ARCHIVE_RAFT2] ARCH_TYPE = RAFT #RAFT 归档 ARCH_DEST = MP3 #归档目标实例名 ARCH_DEST_ID = 3 #归档目标多副本节点 ID EOF # mp3 [dmdba@localhost ~]$ cat > /opt/dmdata/mp3/DAMENG/dmarch.ini <<'EOF' XMAL_HB_INTERVAL = 5 #节点通信检测间隔 RAFT_HB_INTERVAL = 150 #选举心跳间隔 RAFT_VOTE_INTERVAL = 2500 #选举超时时间,三个库设置不同以尽快选出主库 RAFT_SELF_ID = 3 #多副本自身节点 ID [ARCHIVE_LOCAL1] ARCH_TYPE = LOCAL #本地归档类型 ARCH_DEST = /opt/dmdata/mp3/DAMENG/arch #本地归档文件路径 ARCH_FILE_SIZE = 2048 #本地单个归档文件最大值,单位 MB ARCH_SPACE_LIMIT = 40960 #本地归档文件总大小,0 表示无限制 [ARCHIVE_RAFT1] ARCH_TYPE = RAFT #RAFT 归档 ARCH_DEST = MP2 #归档目标实例名 ARCH_DEST_ID = 2 #归档目标多副本节点 ID [ARCHIVE_RAFT2] ARCH_TYPE = RAFT #RAFT 归档 ARCH_DEST = MP1 #归档目标实例名 ARCH_DEST_ID = 1 #归档目标多副本节点 ID EOF

启动mp

# 启动所有mp # 启动完成后,RAFT组内的MP会自动选出主库,待主库选举完成后,整个MP系统即可正常运行 # 单机架构不用加MOUNT [dmdba@localhost ~]$ dmserver /opt/dmdata/mp1/DAMENG/dm.ini dpc_mode=MP MOUNT [dmdba@localhost ~]$ dmserver /opt/dmdata/mp2/DAMENG/dm.ini dpc_mode=MP MOUNT [dmdba@localhost ~]$ dmserver /opt/dmdata/mp3/DAMENG/dm.ini dpc_mode=MP MOUNT

配置bp多副本,单机可忽略

备份bp11、bp21

# 刚初始化的库必须先启动一次,否则备份会报错系统信息无效 [dmdba@localhost opt]$ dmserver /opt/dmdata/bp11/DAMENG/dm.ini dpc_mode=bp [dmdba@localhost opt]$ dmserver /opt/dmdata/bp21/DAMENG/dm.ini dpc_mode=bp # 备份各raft组的主节点,此处暂定为bp11、bp21 [dmdba@localhost ~]$ dmrman ctlstmt="backup database '/opt/dmdata/bp11/DAMENG/dm.ini' full backupset '/opt/fullbak_bp11'" [dmdba@localhost ~]$ dmrman ctlstmt="backup database '/opt/dmdata/bp21/DAMENG/dm.ini' full backupset '/opt/fullbak_bp21'"

还原备份

# 将各raft组主节点备份还原至各raft组副本节点 # bp12 [dmdba@localhost ~]$ dmrman ctlstmt="restore database '/opt/dmdata/bp12/DAMENG/dm.ini' from backupset '/opt/fullbak_bp11'" [dmdba@localhost ~]$ dmrman ctlstmt="recover database '/opt/dmdata/bp12/DAMENG/dm.ini' from backupset '/opt/fullbak_bp11'" [dmdba@localhost ~]$ dmrman ctlstmt="recover database '/opt/dmdata/bp12/DAMENG/dm.ini' update db_magic" # bp13 [dmdba@localhost ~]$ dmrman ctlstmt="restore database '/opt/dmdata/bp13/DAMENG/dm.ini' from backupset '/opt/fullbak_bp11'" [dmdba@localhost ~]$ dmrman ctlstmt="recover database '/opt/dmdata/bp13/DAMENG/dm.ini' from backupset '/opt/fullbak_bp11'" [dmdba@localhost ~]$ dmrman ctlstmt="recover database '/opt/dmdata/bp13/DAMENG/dm.ini' update db_magic" # bp22 [dmdba@localhost ~]$ dmrman ctlstmt="restore database '/opt/dmdata/bp22/DAMENG/dm.ini' from backupset '/opt/fullbak_bp21'" [dmdba@localhost ~]$ dmrman ctlstmt="recover database '/opt/dmdata/bp22/DAMENG/dm.ini' from backupset '/opt/fullbak_bp21'" [dmdba@localhost ~]$ dmrman ctlstmt="recover database '/opt/dmdata/bp22/DAMENG/dm.ini' update db_magic" # bp23 [dmdba@localhost ~]$ dmrman ctlstmt="restore database '/opt/dmdata/bp23/DAMENG/dm.ini' from backupset '/opt/fullbak_bp21'" [dmdba@localhost ~]$ dmrman ctlstmt="recover database '/opt/dmdata/bp23/DAMENG/dm.ini' from backupset '/opt/fullbak_bp21'" [dmdba@localhost ~]$ dmrman ctlstmt="recover database '/opt/dmdata/bp23/DAMENG/dm.ini' update db_magic"

配置归档

# 修改dm.ini,所有节点相同 [dmdba@localhost ~]$ vi /opt/dmdata/bp11/DAMENG/dm.ini ARCH_INI = 1 #打开归档配置 ALTER_MODE_STATUS = 0 #不允许用户直接通过 SQL 语句修改服务器模式 # vi /opt/dmdata/bp12/DAMENG/dm.ini # vi /opt/dmdata/bp13/DAMENG/dm.ini # vi /opt/dmdata/bp21/DAMENG/dm.ini # vi /opt/dmdata/bp22/DAMENG/dm.ini # vi /opt/dmdata/bp23/DAMENG/dm.ini

raft1

# 配置dmarch.ini # bp11 [dmdba@localhost ~]$ cat > /opt/dmdata/bp11/DAMENG/dmarch.ini <<'EOF' XMAL_HB_INTERVAL = 5 #节点通信检测间隔 RAFT_HB_INTERVAL = 150 #选举心跳间隔 RAFT_VOTE_INTERVAL = 1500 #选举超时时间,三个库设置不同以尽快选出主库 RAFT_SELF_ID = 1 #多副本自身节点 ID [ARCHIVE_LOCAL1] ARCH_TYPE = LOCAL #本地归档类型 ARCH_DEST = /opt/dmdata/bp11/DAMENG/arch #本地归档文件路径 ARCH_FILE_SIZE = 2048 #本地单个归档文件最大值,单位 MB ARCH_SPACE_LIMIT = 40960 #本地归档文件总大小,0 表示无限制 [ARCHIVE_RAFT1] ARCH_TYPE = RAFT #RAFT 归档 ARCH_DEST = BP12 #归档目标实例名 ARCH_DEST_ID = 2 #归档目标多副本节点 ID [ARCHIVE_RAFT2] ARCH_TYPE = RAFT #RAFT 归档 ARCH_DEST = BP13 #归档目标实例名 ARCH_DEST_ID = 3 #归档目标多副本节点 ID EOF # bp12 [dmdba@localhost ~]$ cat > /opt/dmdata/bp12/DAMENG/dmarch.ini <<'EOF' XMAL_HB_INTERVAL = 5 #节点通信检测间隔 RAFT_HB_INTERVAL = 150 #选举心跳间隔 RAFT_VOTE_INTERVAL = 2000 #选举超时时间,三个库设置不同以尽快选出主库 RAFT_SELF_ID = 2 #多副本自身节点 ID [ARCHIVE_LOCAL1] ARCH_TYPE = LOCAL #本地归档类型 ARCH_DEST = /opt/dmdata/bp12/DAMENG/arch #本地归档文件路径 ARCH_FILE_SIZE = 2048 #本地单个归档文件最大值,单位 MB ARCH_SPACE_LIMIT = 40960 #本地归档文件总大小,0 表示无限制 [ARCHIVE_RAFT1] ARCH_TYPE = RAFT #RAFT 归档 ARCH_DEST = BP11 #归档目标实例名 ARCH_DEST_ID = 1 #归档目标多副本节点 ID [ARCHIVE_RAFT2] ARCH_TYPE = RAFT #RAFT 归档 ARCH_DEST = BP13 #归档目标实例名 ARCH_DEST_ID = 3 #归档目标多副本节点 ID EOF # bp13 [dmdba@localhost ~]$ cat > /opt/dmdata/bp13/DAMENG/dmarch.ini <<'EOF' XMAL_HB_INTERVAL = 5 #节点通信检测间隔 RAFT_HB_INTERVAL = 150 #选举心跳间隔 RAFT_VOTE_INTERVAL = 2500 #选举超时时间,三个库设置不同以尽快选出主库 RAFT_SELF_ID = 3 #多副本自身节点 ID [ARCHIVE_LOCAL1] ARCH_TYPE = LOCAL #本地归档类型 ARCH_DEST = /opt/dmdata/bp13/DAMENG/arch #本地归档文件路径 ARCH_FILE_SIZE = 2048 #本地单个归档文件最大值,单位 MB ARCH_SPACE_LIMIT = 40960 #本地归档文件总大小,0 表示无限制 [ARCHIVE_RAFT1] ARCH_TYPE = RAFT #RAFT 归档 ARCH_DEST = BP12 #归档目标实例名 ARCH_DEST_ID = 2 #归档目标多副本节点 ID [ARCHIVE_RAFT2] ARCH_TYPE = RAFT #RAFT 归档 ARCH_DEST = BP11 #归档目标实例名 ARCH_DEST_ID = 1 #归档目标多副本节点 ID EOF

raft2

# 配置dmarch.ini # bp21 [dmdba@localhost ~]$ cat > /opt/dmdata/bp21/DAMENG/dmarch.ini <<'EOF' XMAL_HB_INTERVAL = 5 #节点通信检测间隔 RAFT_HB_INTERVAL = 150 #选举心跳间隔 RAFT_VOTE_INTERVAL = 1500 #选举超时时间,三个库设置不同以尽快选出主库 RAFT_SELF_ID = 1 #多副本自身节点 ID [ARCHIVE_LOCAL1] ARCH_TYPE = LOCAL #本地归档类型 ARCH_DEST = /opt/dmdata/bp21/DAMENG/arch #本地归档文件路径 ARCH_FILE_SIZE = 2048 #本地单个归档文件最大值,单位 MB ARCH_SPACE_LIMIT = 40960 #本地归档文件总大小,0 表示无限制 [ARCHIVE_RAFT1] ARCH_TYPE = RAFT #RAFT 归档 ARCH_DEST = BP22 #归档目标实例名 ARCH_DEST_ID = 2 #归档目标多副本节点 ID [ARCHIVE_RAFT2] ARCH_TYPE = RAFT #RAFT 归档 ARCH_DEST = BP23 #归档目标实例名 ARCH_DEST_ID = 3 #归档目标多副本节点 ID EOF # bp22 [dmdba@localhost ~]$ cat > /opt/dmdata/bp22/DAMENG/dmarch.ini <<'EOF' XMAL_HB_INTERVAL = 5 #节点通信检测间隔 RAFT_HB_INTERVAL = 150 #选举心跳间隔 RAFT_VOTE_INTERVAL = 2000 #选举超时时间,三个库设置不同以尽快选出主库 RAFT_SELF_ID = 2 #多副本自身节点 ID [ARCHIVE_LOCAL1] ARCH_TYPE = LOCAL #本地归档类型 ARCH_DEST = /opt/dmdata/bp22/DAMENG/arch #本地归档文件路径 ARCH_FILE_SIZE = 2048 #本地单个归档文件最大值,单位 MB ARCH_SPACE_LIMIT = 40960 #本地归档文件总大小,0 表示无限制 [ARCHIVE_RAFT1] ARCH_TYPE = RAFT #RAFT 归档 ARCH_DEST = BP21 #归档目标实例名 ARCH_DEST_ID = 1 #归档目标多副本节点 ID [ARCHIVE_RAFT2] ARCH_TYPE = RAFT #RAFT 归档 ARCH_DEST = BP23 #归档目标实例名 ARCH_DEST_ID = 3 #归档目标多副本节点 ID EOF # bp23 [dmdba@localhost ~]$ cat > /opt/dmdata/bp23/DAMENG/dmarch.ini <<'EOF' XMAL_HB_INTERVAL = 5 #节点通信检测间隔 RAFT_HB_INTERVAL = 150 #选举心跳间隔 RAFT_VOTE_INTERVAL = 2500 #选举超时时间,三个库设置不同以尽快选出主库 RAFT_SELF_ID = 3 #多副本自身节点 ID [ARCHIVE_LOCAL1] ARCH_TYPE = LOCAL #本地归档类型 ARCH_DEST = /opt/dmdata/bp23/DAMENG/arch #本地归档文件路径 ARCH_FILE_SIZE = 2048 #本地单个归档文件最大值,单位 MB ARCH_SPACE_LIMIT = 40960 #本地归档文件总大小,0 表示无限制 [ARCHIVE_RAFT1] ARCH_TYPE = RAFT #RAFT 归档 ARCH_DEST = BP22 #归档目标实例名 ARCH_DEST_ID = 2 #归档目标多副本节点 ID [ARCHIVE_RAFT2] ARCH_TYPE = RAFT #RAFT 归档 ARCH_DEST = BP21 #归档目标实例名 ARCH_DEST_ID = 1 #归档目标多副本节点 ID EOF

启动bp和sp

# bp和sp的启动无先后之分 # bp # 启动完成后,RAFT组内会自动选出主库,待主库选举完成后,整个系统即可正常运行 # 单机架构不用加MOUNT [dmdba@localhost ~]$ /opt/dmdbms/bin/dmserver /opt/dmdata/bp11/DAMENG/dm.ini dpc_mode=BP MOUNT [dmdba@localhost ~]$ /opt/dmdbms/bin/dmserver /opt/dmdata/bp12/DAMENG/dm.ini dpc_mode=BP MOUNT [dmdba@localhost ~]$ /opt/dmdbms/bin/dmserver /opt/dmdata/bp13/DAMENG/dm.ini dpc_mode=BP MOUNT [dmdba@localhost ~]$ /opt/dmdbms/bin/dmserver /opt/dmdata/bp21/DAMENG/dm.ini dpc_mode=BP MOUNT [dmdba@localhost ~]$ /opt/dmdbms/bin/dmserver /opt/dmdata/bp22/DAMENG/dm.ini dpc_mode=BP MOUNT [dmdba@localhost ~]$ /opt/dmdbms/bin/dmserver /opt/dmdata/bp23/DAMENG/dm.ini dpc_mode=BP MOUNT # sp [dmdba@localhost ~]$ /opt/dmdbms/bin/dmserver /opt/dmdata/sp1/DAMENG/dm.ini dpc_mode=SP [dmdba@localhost ~]$ /opt/dmdbms/bin/dmserver /opt/dmdata/sp2/DAMENG/dm.ini dpc_mode=SP # 启动成功后SP上执行查询V$instance可以看到所有RAFT组中实例

注册服务?????如何统一启动退出

# mp # 单机架构不用加-m mount [root@localhost ~]# /opt/dmdbms/script/root/dm_service_installer.sh -t dmserver -p MP1 -dm_ini /opt/dmdata/mp1/DAMENG/dm.ini -dpc_mode MP -m mount [root@localhost ~]# /opt/dmdbms/script/root/dm_service_installer.sh -t dmserver -p MP2 -dm_ini /opt/dmdata/mp2/DAMENG/dm.ini -dpc_mode MP -m mount [root@localhost ~]# /opt/dmdbms/script/root/dm_service_installer.sh -t dmserver -p MP3 -dm_ini /opt/dmdata/mp3/DAMENG/dm.ini -dpc_mode MP -m mount # BP # 单机架构不用加-m mount [root@localhost ~]# /opt/dmdbms/script/root/dm_service_installer.sh -t dmserver -p BP11 -dm_ini /opt/dmdata/bp11/DAMENG/dm.ini -dpc_mode BP -m mount [root@localhost ~]# /opt/dmdbms/script/root/dm_service_installer.sh -t dmserver -p BP12 -dm_ini /opt/dmdata/bp12/DAMENG/dm.ini -dpc_mode BP -m mount [root@localhost ~]# /opt/dmdbms/script/root/dm_service_installer.sh -t dmserver -p BP13 -dm_ini /opt/dmdata/bp13/DAMENG/dm.ini -dpc_mode BP -m mount [root@localhost ~]# /opt/dmdbms/script/root/dm_service_installer.sh -t dmserver -p BP21 -dm_ini /opt/dmdata/bp21/DAMENG/dm.ini -dpc_mode BP -m mount [root@localhost ~]# /opt/dmdbms/script/root/dm_service_installer.sh -t dmserver -p BP22 -dm_ini /opt/dmdata/bp22/DAMENG/dm.ini -dpc_mode BP -m mount [root@localhost ~]# /opt/dmdbms/script/root/dm_service_installer.sh -t dmserver -p BP23 -dm_ini /opt/dmdata/bp23/DAMENG/dm.ini -dpc_mode BP -m mount # SP [root@localhost ~]# /opt/dmdbms/script/root/dm_service_installer.sh -t dmserver -p SP1 -dm_ini /opt/dmdata/sp1/DAMENG/dm.ini -dpc_mode SP [root@localhost ~]# /opt/dmdbms/script/root/dm_service_installer.sh -t dmserver -p SP2 -dm_ini /opt/dmdata/sp2/DAMENG/dm.ini -dpc_mode SP

启动和退出顺序

启动:MP-BP-SP

退出:SP-BP-MP

[!WARNING]

如果没有按正常顺序退出,可能会导致剩下的机器直接宕机。此时,只能对其他的机器采用强杀。这种服务器异常退出的情况,当再次重启的时候,服务器需要做大量的 REDO 日志,因此重启的时间会稍长一些,其它没有影响

评论
后发表回复

作者

文章

阅读量

获赞

扫一扫
联系客服