本篇主要是集群部署内容,相关使用及参数说明可以参考官方文档。
后续再更新使用相关内容。
主机:
IP Addr | 数据库实例 | 数据库版本 | OS | |
---|---|---|---|---|
Node1 | 192.168.15.21(外部) 192.168.25.21(内部) |
EP01 | DM Database Server 64 V8 1-1-72-20.04.03-119959-ENT |
中标麒麟6 |
Node2 | 192.168.15.22(外部) 192.168.25.22(内部) |
EP02 | DM Database Server 64 V8 1-1-72-20.04.03-119959-ENT |
中标麒麟6 |
Node3 | 192.168.15.23(外部) 192.168.25.23(内部) |
EP03 | DM Database Server 64 V8 1-1-72-20.04.03-119959-ENT |
中标麒麟6 |
Node4 | 192.168.15.24(外部) 192.168.25.24(内部) |
EP04 | DM Database Server 64 V8 1-1-72-20.04.03-119959-ENT |
中标麒麟6 |
主库端口规划:
实例名 | EP01 | EP02 | EP03 | EP04 |
---|---|---|---|---|
PORT_NUM | 7236 | 7236 | 7236 | 7236 |
MAL_HOST | 192.168.25.21 | 192.168.25.22 | 192.168.25.23 | 192.168.25.24 |
MAL_PORT | 7336 | 7336 | 7336 | 7336 |
MPP实例序号(以实际分配为准) | 0 | 1 | 2 | 3 |
数据库文件路径:
主机 | 实例名 | 数据文件路径 | 归档日志路径 |
---|---|---|---|
Node1 | EP01 | /dm8/DMDeploy/dmmpp/EP01/DAMENG | /dm8/dmarch/EP01 |
Node2 | EP02 | /dm8/DMDeploy/dmmpp/EP02/DAMENG | /dm8/dmarch/EP02 |
Node3 | EP03 | /dm8/DMDeploy/dmmpp/EP03/DAMENG | /dm8/dmarch/EP03 |
Node4 | EP04 | /dm8/DMDeploy/dmmpp/EP04/DAMENG | /dm8/dmarch/EP04 |
DEM已经搭建完成,且各节点已配置并启动dmagent。
DEM安装部署
“监控及告警”==》 “主机”==》 “更多” ==》 “配置网络” ==》 “所有主机”
“监控及告警”==》 “主机”==》 主机列表中“操作”==》“配置网络”
每个主机单独配置
“客户端工具” ==》 “部署集群小图标”
选择集群类型为:MPP
选择所有部署mpp集群节点主机。
需要注意的是:
这里的主机顺序无法更改。对应的MPP实例序号从0开始从上往下递增。例如这里22主机的实例序号是0,24的为1,23的为2,21的为3。
在使用DEM部署集群时无法手动更改顺序和实例序号。
注意:在dm8的DEM版本,这里没有”MPP主备” 选项可选。
DM7.6版本的DEM示例如下:
工作目录、实例名前缀、PORT_NUM、MAL_PORT这些参数的值都是可以手动修改指定。
初始化数据库,可以选择指定相关初始化参数值。
相关说明可以参考:https://www.cndba.cn/LeeWen2020/article/4151
配置dmmal.ini相关参数
相关参数说明可以参考官方文档《DM8_Data_Watch_And_Read_Write_Shunt_V4.0》或者《DM8管理员手册》
配置dmarch.ini相关参数
配置每个实例的本地归档相关参数。
PS:在此次实验中没有勾选配置归档,MPP搭建完后,查看dm.ini中ARCH_INI参数值为1.
让人很懵逼的一个选项,初次看完全不知道要传啥东西。
网上查找之后发现是上传软件安装iso文件或者将任意已安装数据库软件的服务器上$DM_HOME/bin 目录拷贝到到自己本地,并压缩为.zip的压缩包,然后上传。
可以选择所有节点使用同一文件,也可以每个节点使用单独的文件。
显示之前步骤所有配置选项详情:
部署类型:MPP 部署名称:dmmpp
=====================================
配置环境说明:
=====================================
机器名: unknown
ip地址: 192.168.15.22
192.168.25.22
初始状态: 主库:MPP_EP01
操作系统: Linux
备注: 外网IP:192.168.15.22
内网IP:192.168.25.22
-------------------------------------------------------------------------------------------------------------------
机器名: unknown
ip地址: 192.168.15.24
192.168.25.24
初始状态: 主库:MPP_EP02
操作系统: Linux
备注: 外网IP:192.168.15.24
内网IP:192.168.25.24
-------------------------------------------------------------------------------------------------------------------
机器名: unknown
ip地址: 192.168.15.23
192.168.25.23
初始状态: 主库:MPP_EP03
操作系统: Linux
备注: 外网IP:192.168.15.23
内网IP:192.168.25.23
-------------------------------------------------------------------------------------------------------------------
机器名: unknown
ip地址: 192.168.15.21
192.168.25.21
初始状态: 主库:MPP_EP04
操作系统: Linux
备注: 外网IP:192.168.15.21
内网IP:192.168.25.21
-------------------------------------------------------------------------------------------------------------------
=====================================
端口规划:
=====================================
实例名 PORT_NUM MAL_PORT
MPP_EP01 7240 7340
MPP_EP02 7240 7340
MPP_EP03 7240 7340
MPP_EP04 7240 7340
=====================================
数据准备:
=====================================
.初始化新库
-------------------------------------------------------------------------------------------------------------------
簇大小 : 16 页大小 : 16 日志文件大小 : 256 时区设置 : +08:00 页面检查 : 不启用
字符集 : GB18030 USBKEY-PIN : 无 字符串比较大小写敏感 : 是 空格填充模式 : 否 VARCHAR类型以字符为单位 : 否
启用日志文件加密 : 否 改进的字符串HASH算法 : 是 开启ORACLE兼容包 : 是 启用全库加密 : 否
-------------------------------------------------------------------------------------------------------------------
=====================================
主库MPP_EP01配置
=====================================
注册达梦数据库实例服务:DmService_MPP_EP01
.dm.ini配置
-------------------------------------------------------------------------------------------------------------------
INSTANCE_NAME = MPP_EP01 PORT_NUM = 7240 MAL_INI = 1 ARCH_INI = 1 MPP_INI = 1
-------------------------------------------------------------------------------------------------------------------
.dmmal.ini配置
-------------------------------------------------------------------------------------------------------------------
MAL_CHECK_INTERVAL = 30 MAL_CONN_FAIL_INTERVAL = 10 MAL_LOGIN_TIMEOUT = 15 MAL_BUF_SIZE = 100 MAL_SYS_BUF_SIZE = 0
MAL_VPOOL_SIZE = 128 MAL_COMPRESS_LEVEL = 0
[MAL_INST1]
MAL_INST_NAME = MPP_EP01 MAL_HOST = 192.168.25.22 MAL_PORT = 7340 MAL_INST_HOST = 192.168.15.22 MAL_INST_PORT = 7240
[MAL_INST2]
MAL_INST_NAME = MPP_EP02 MAL_HOST = 192.168.25.24 MAL_PORT = 7340 MAL_INST_HOST = 192.168.15.24 MAL_INST_PORT = 7240
[MAL_INST3]
MAL_INST_NAME = MPP_EP03 MAL_HOST = 192.168.25.23 MAL_PORT = 7340 MAL_INST_HOST = 192.168.15.23 MAL_INST_PORT = 7240
[MAL_INST4]
MAL_INST_NAME = MPP_EP04 MAL_HOST = 192.168.25.21 MAL_PORT = 7340 MAL_INST_HOST = 192.168.15.21 MAL_INST_PORT = 7240
-------------------------------------------------------------------------------------------------------------------
=====================================
主库MPP_EP02配置
=====================================
注册达梦数据库实例服务:DmService_MPP_EP02
.dm.ini配置
-------------------------------------------------------------------------------------------------------------------
INSTANCE_NAME = MPP_EP02 PORT_NUM = 7240 MAL_INI = 1 ARCH_INI = 1 MPP_INI = 1
-------------------------------------------------------------------------------------------------------------------
.dmmal.ini配置
-------------------------------------------------------------------------------------------------------------------
MAL_CHECK_INTERVAL = 30 MAL_CONN_FAIL_INTERVAL = 10 MAL_LOGIN_TIMEOUT = 15 MAL_BUF_SIZE = 100 MAL_SYS_BUF_SIZE = 0
MAL_VPOOL_SIZE = 128 MAL_COMPRESS_LEVEL = 0
[MAL_INST1]
MAL_INST_NAME = MPP_EP01 MAL_HOST = 192.168.25.22 MAL_PORT = 7340 MAL_INST_HOST = 192.168.15.22 MAL_INST_PORT = 7240
[MAL_INST2]
MAL_INST_NAME = MPP_EP02 MAL_HOST = 192.168.25.24 MAL_PORT = 7340 MAL_INST_HOST = 192.168.15.24 MAL_INST_PORT = 7240
[MAL_INST3]
MAL_INST_NAME = MPP_EP03 MAL_HOST = 192.168.25.23 MAL_PORT = 7340 MAL_INST_HOST = 192.168.15.23 MAL_INST_PORT = 7240
[MAL_INST4]
MAL_INST_NAME = MPP_EP04 MAL_HOST = 192.168.25.21 MAL_PORT = 7340 MAL_INST_HOST = 192.168.15.21 MAL_INST_PORT = 7240
-------------------------------------------------------------------------------------------------------------------
=====================================
主库MPP_EP03配置
=====================================
注册达梦数据库实例服务:DmService_MPP_EP03
.dm.ini配置
-------------------------------------------------------------------------------------------------------------------
INSTANCE_NAME = MPP_EP03 PORT_NUM = 7240 MAL_INI = 1 ARCH_INI = 1 MPP_INI = 1
-------------------------------------------------------------------------------------------------------------------
.dmmal.ini配置
-------------------------------------------------------------------------------------------------------------------
MAL_CHECK_INTERVAL = 30 MAL_CONN_FAIL_INTERVAL = 10 MAL_LOGIN_TIMEOUT = 15 MAL_BUF_SIZE = 100 MAL_SYS_BUF_SIZE = 0
MAL_VPOOL_SIZE = 128 MAL_COMPRESS_LEVEL = 0
[MAL_INST1]
MAL_INST_NAME = MPP_EP01 MAL_HOST = 192.168.25.22 MAL_PORT = 7340 MAL_INST_HOST = 192.168.15.22 MAL_INST_PORT = 7240
[MAL_INST2]
MAL_INST_NAME = MPP_EP02 MAL_HOST = 192.168.25.24 MAL_PORT = 7340 MAL_INST_HOST = 192.168.15.24 MAL_INST_PORT = 7240
[MAL_INST3]
MAL_INST_NAME = MPP_EP03 MAL_HOST = 192.168.25.23 MAL_PORT = 7340 MAL_INST_HOST = 192.168.15.23 MAL_INST_PORT = 7240
[MAL_INST4]
MAL_INST_NAME = MPP_EP04 MAL_HOST = 192.168.25.21 MAL_PORT = 7340 MAL_INST_HOST = 192.168.15.21 MAL_INST_PORT = 7240
-------------------------------------------------------------------------------------------------------------------
=====================================
主库MPP_EP04配置
=====================================
注册达梦数据库实例服务:DmService_MPP_EP04
.dm.ini配置
-------------------------------------------------------------------------------------------------------------------
INSTANCE_NAME = MPP_EP04 PORT_NUM = 7240 MAL_INI = 1 ARCH_INI = 1 MPP_INI = 1
-------------------------------------------------------------------------------------------------------------------
.dmmal.ini配置
-------------------------------------------------------------------------------------------------------------------
MAL_CHECK_INTERVAL = 30 MAL_CONN_FAIL_INTERVAL = 10 MAL_LOGIN_TIMEOUT = 15 MAL_BUF_SIZE = 100 MAL_SYS_BUF_SIZE = 0
MAL_VPOOL_SIZE = 128 MAL_COMPRESS_LEVEL = 0
[MAL_INST1]
MAL_INST_NAME = MPP_EP01 MAL_HOST = 192.168.25.22 MAL_PORT = 7340 MAL_INST_HOST = 192.168.15.22 MAL_INST_PORT = 7240
[MAL_INST2]
MAL_INST_NAME = MPP_EP02 MAL_HOST = 192.168.25.24 MAL_PORT = 7340 MAL_INST_HOST = 192.168.15.24 MAL_INST_PORT = 7240
[MAL_INST3]
MAL_INST_NAME = MPP_EP03 MAL_HOST = 192.168.25.23 MAL_PORT = 7340 MAL_INST_HOST = 192.168.15.23 MAL_INST_PORT = 7240
[MAL_INST4]
MAL_INST_NAME = MPP_EP04 MAL_HOST = 192.168.25.21 MAL_PORT = 7340 MAL_INST_HOST = 192.168.15.21 MAL_INST_PORT = 7240
-------------------------------------------------------------------------------------------------------------------
在部署完成后,DEM会自动发现MPP节点上的数据库实例状态。
[dmdba@dm8mpp01 bin]$ ./disql sysdba/Dameng123:7236
服务器[LOCALHOST:7236]:处于主库打开状态
登录使用时间: 4.008(毫秒)
disql V8
SQL>
###1、获取会话连接的 EP 的节点序号
SQL> SELECT SF_GET_SELF_EP_SEQNO();
行号 SF_GET_SELF_EP_SEQNO()
---------- ----------------------
1 3
已用时间: 2.116(毫秒). 执行号:480433.
###2、获取 EP 节点配置信息
SQL> SELECT * FROM V$MPP_CFG_ITEM WHERE SF_GET_EP_SEQNO(ROWID) = SF_GET_SELF_EP_SEQNO();
行号 SERVICE_NAME INST_NAME EP_SEQNO STATE
---------- ------------- --------- ----------- -----
1 service_name1 EP02 0 OK
2 service_name2 EP04 1 OK
3 service_name3 EP03 2 OK
4 service_name4 EP01 3 OK
###3、获取当前会话连接的实例
SQL> SELECT NAME FROM V$INSTANCE WHERE SF_GET_EP_SEQNO(ROWID) =
SF_GET_SELF_EP_SEQNO();2
行号 NAME
---------- ----
1 EP01
已用时间: 9.074(毫秒). 执行号:480437.