DM8 MPP集群部署

1、MPP集群介绍

1.1、MPP
达梦大规模并行处理 MPP(DM Massively Parallel Processing,缩写 DM MPP) 是基于达梦数据库管理系统研发的完全对等无共享式集群组件,支持将多个 DM 数据库实例 组织为一个并行计算网络,对外提供统一的数据库服务。

1.2、dmmpp.ctl文件
dmmpp.ctl 控制文件的信息主要包括:系统状态、MPP 节点数、文件校验码、故障节点数、故障节点序号、配置项名、实例名、实例节点序号,以及根据节点数和实例序号生成 的哈希映射数组等。MPP 集群中节点间的关联信息记录在dmmpp.ctl 控制文件中,因此, 所有MPP 主节点存放的 dmmpp.ctl 文件内容要求完全一致。

1.3、mpp使用
MPP 集群中用户登录某个节点创建一个会话(session)时,系统自动在其他 MPP 节点上建立对应的镜像会话(msession),会话断开时,系统自动通知其他 MPP 节点释放对 应会话(镜像会话)。

环境说明:2台已经安装dm8数据库,操作系统版本centos 7.6

1.4、MPP集群部署规划

MPP01:192.168.0.153  

MPP02:192.168.0.144

二、部署MPP集群

两台数据库都提前安装好dm8数据库,等待部署

2.1、MPP01初始化实例

[dmdba@ecs-141585 bin]$ ./dminit INI_FILE=/dm8/data1/DAMENG/dm.ini PATH=/dm8/data1  extent_size=16  page_size=16 case_sensitive=y   blank_pad_mode=1    DB_NAME=DAMENG  INSTANCE_NAME=PROD PORT_NUM=5236  ARCH_FLAG=1          SYSDBA_PWD=Dameng123 
initdb V8
db version: 0x7000c
file dm.key not found, use default license!
License will expire on 2022-11-11
Normal of FAST
Normal of DEFAULT
Normal of RECYCLE
Normal of KEEP
Normal of ROLL

 log file path: /dm8/data1/DAMENG/DAMENG01.log


 log file path: /dm8/data1/DAMENG/DAMENG02.log

write to dir [/dm8/data1/DAMENG].
create dm database success. 2022-09-02 20:54:38

2.2、MPP01配置归档日志

[dmdba@ecs-141585 bin]$ cat >> /dm8/data1/DAMENG/dmarch.ini  << EOF
> [ARCHIVE_LOCAL1]
> ARCH_TYPE     =  LOCAL
> ARCH_DEST     = /dm8/arch1
> ARCH_FILE_SIZE  = 128
> EOF

2.3、把数据库注册服务并启动数据库

[root@ecs-141585 ~]# cd /dm8/script/root/
[root@ecs-141585 root]# ./dm_service_installer.sh -t dmserver -p PRO -dm_ini /dm8/data1/DAMENG/dm.ini
Created symlink from /etc/systemd/system/multi-user.target.wants/DmServicePRO.service to /usr/lib/systemd/system/DmServicePRO.service.
创建服务(DmServicePRO)完成

#启动服务
[root@ecs-141585 root]# systemctl start DmServicePRO

#开机自启动
[root@ecs-141585 root]# systemctl enable  DmServicePRO

2.4、停止数据库并使用dmrman进行备份        

[root@ecs-141585 root]# systemctl stop  DmServicePRO

[dmdba@ecs-141585 root]$ cd /dm8/bin
[dmdba@ecs-141585 bin]$ ./dmrman CTLSTMT="BACKUP DATABASE '/dm8/data1/DAMENG/dm.ini' FULL TO BACKUP_FILE1 BACKUPSET '/dm8/backup/BACKUP_FILE_011'" 
dmrman V8
BACKUP DATABASE '/dm8/data1/DAMENG/dm.ini' FULL TO BACKUP_FILE1 BACKUPSET '/dm8/backup/BACKUP_FILE_011'
file dm.key not found, use default license!
Database mode = 0, oguid = 0
Normal of FAST
Normal of DEFAULT
Normal of RECYCLE
Normal of KEEP
Normal of ROLL
EP[0]'s cur_lsn[32802], file_lsn[32802]
Processing backupset /dm8/backup/BACKUP_FILE_011
[Percent:100.00%][Speed:0.00M/s][Cost:00:00:00][Remaining:00:00:00]                                 
backup successfully!
time used: 00:00:01.066

2.5、把MPP01的物理全备scp到MPP02的服务器上

[dmdba@ecs-141585 bin]$ scp -r /dm8/backup/BACKUP_FILE_011 root@192.168.0.144:/dm8/backup/
The authenticity of host '192.168.0.144 (192.168.0.144)' can't be established.
ECDSA key fingerprint is SHA256:rPq0DqJX6RmfJMmSg0xBynhvYuZIgqDaXS6vnkTNMss.
ECDSA key fingerprint is MD5:98:46:fe:f5:6b:6f:8b:d8:21:ae:db:4a:8d:a4:86:a2.
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added '192.168.0.144' (ECDSA) to the list of known hosts.
root@192.168.0.144's password: 
BACKUP_FILE_011.meta                                                                                          100%   77KB  83.2MB/s   00:00    
BACKUP_FILE_011.bak                                                                                           100%   10MB 165.4MB/s   00:00    

2.6、在MPP02的服务器上还原MPP01的备份

[dmdba@ecs-301110 bin]$ ./dmrman CTLSTMT="RESTORE DATABASE '/dm8/data1/DAMENG/dm.ini' FROM BACKUPSET '/dm8/backup/BACKUP_FILE_011'" 
dmrman V8
RESTORE DATABASE '/dm8/data1/DAMENG/dm.ini' FROM BACKUPSET '/dm8/backup/BACKUP_FILE_011'
file dm.key not found, use default license!
Normal of FAST
Normal of DEFAULT
Normal of RECYCLE
Normal of KEEP
Normal of ROLL
[Percent:100.00%][Speed:0.00M/s][Cost:00:00:02][Remaining:00:00:00]                                 
restore successfully.
time used: 00:00:02.485



[dmdba@ecs-301110 bin]$ ./dmrman CTLSTMT="RECOVER DATABASE '/dm8/data1/DAMENG/dm.ini' FROM BACKUPSET '/dm8/backup/BACKUP_FILE_011'" 
dmrman V8
RECOVER DATABASE '/dm8/data1/DAMENG/dm.ini' FROM BACKUPSET '/dm8/backup/BACKUP_FILE_011'
file dm.key not found, use default license!
Database mode = 0, oguid = 0
Normal of FAST
Normal of DEFAULT
Normal of RECYCLE
Normal of KEEP
Normal of ROLL
EP[0]'s cur_lsn[32802], file_lsn[32802]
备份集[/dm8/backup/BACKUP_FILE_011]备份过程中未产生日志
recover successfully!
time used: 256.620(ms)



[dmdba@ecs-301110 bin]$ ./dmrman CTLSTMT="RECOVER DATABASE '/dm8/data1/DAMENG/dm.ini' UPDATE DB_MAGIC"
dmrman V8
RECOVER DATABASE '/dm8/data1/DAMENG/dm.ini' UPDATE DB_MAGIC
file dm.key not found, use default license!
Database mode = 0, oguid = 0
Normal of FAST
Normal of DEFAULT
Normal of RECYCLE
Normal of KEEP
Normal of ROLL
EP[0]'s cur_lsn[32802], file_lsn[32802]
recover successfully!
time used: 999.905(ms)

2.7、MPP02服务器上的数据库注册服务并启动

[root@ecs-301110 ~]# cd /dm8/script/root/
[root@ecs-301110 root]# ./dm_service_installer.sh -t dmserver -p PRO -dm_ini /dm8/data1/DAMENG/dm.ini
Created symlink from /etc/systemd/system/multi-user.target.wants/DmServicePRO.service to /usr/lib/systemd/system/DmServicePRO.service.
创建服务(DmServicePRO)完成
[root@ecs-301110 root]# systemctl start DmServicePRO
[root@ecs-301110 root]# systemctl enable  DmServicePRO

2.8、修改dm.ini 配置文件

#MPP01

vi dm.ini
INSTANCE_NAME = GRP1_MPP01
PORT_NUM = 5236
DW_INACTIVE_INTERVAL = 60 
ALTER_MODE_STATUS = 0
ENABLE_OFFLINE_TS = 2
MAL_INI = 1 
MPP_INI = 1
RLOG_SEND_APPLY_MON = 64

#MPP02

vi dm.ini
INSTANCE_NAME = GRP1_MPP02
PORT_NUM = 5236
DW_INACTIVE_INTERVAL = 60 
ALTER_MODE_STATUS = 0
ENABLE_OFFLINE_TS = 2
MAL_INI = 1 
MPP_INI = 1
RLOG_SEND_APPLY_MON = 64

2.9、配置dmmal.ini

#MPP01和MPP02的dmmal.ini配置一样
[root@ecs-301110 DAMENG]#  cd  /dm8/data1/DAMENG

vi dmmal.ini
MAL_CHECK_INTERVAL = 5
MAL_CONN_FAIL_INTERVAL = 5
[MAL_INST1]
MAL_INST_NAME = GRP1_MPP01
MAL_HOST = 192.168.0.153
MAL_PORT = 7236
MAL_INST_HOST = 192.168.0.153
MAL_INST_PORT = 5236
[MAL_INST2]
MAL_INST_NAME = GRP1_MPP02
MAL_HOST = 192.168.0.144
MAL_PORT = 7236
MAL_INST_HOST = 192.168.0.144
MAL_INST_PORT = 5236

配置dmmpp.ini

#MPP01和MPP02节点也使用这个dmmpp.ctl
[root@ecs-301110 DAMENG]#  cd  /dm8/data1/DAMENG
vi dmmpp.ini

[service_name1]
mpp_seq_no = 0
mpp_inst_name = GRP1_MPP01
[service_name2]
mpp_seq_no = 1
mpp_inst_name = GRP1_MPP02



#转换成dmmpp.ctl

./dmctlcvt TYPE=2 SRC=/dm8/data1/DAMENG/dmmpp.ini  DEST=/dm8/data1/DAMENG/dmmpp.ctl

三、启动MPP集群


3.1 启动数据库实例

#MPP01启动数据库。

systemctl start DmServicePRO

#MPP02启动数据库

systemctl start DmServicePRO

部署总结:

        经过前面几个步骤, DM MPP 环境已经配置完成了。分别启动 MPP1_01 和 MPP1_02 的 DM 数据库实例(顺序不分先后), DM MPP 系统即能正常运行,用户就可以登录任一 EP节点 进行数据库操作了。

        需要停止 DM MPP 系统的运行时,只需要停止每个 EP 的 DM 实例即可,没有特别的顺序要求。若在 DM MPP系统的运行过程中,某一 EP 发生故障停机,则整个 MPP 系统将处于不能正常服务的状态。当前所有的用户会话会被系统断开,不能进行全局登录,只能进行本地登录。 因此,为了保证 MPP 系统的高可用性,强烈建议采用 DM MPP 与数据守护相结合的部署方案。
 

更多内容可访问达梦官方社区地址:https://eco.dameng.com

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值