DM mpp集群搭建

本文详细介绍了如何在DMMPP环境中进行安装、用户管理、网络配置、环境变量设置、资源限制调整、系统参数优化,以及实例初始化和配置文件编写。重点在于确保高并发OLTP应用的稳定运行和最佳性能。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1 DM MPP

不适合于高并发操作的 OLTP 类型应用,如果网络是瓶颈,则并不是节点数越多越好。
建议配置千兆或万兆内部网络,对于查询连接中使用频率较高的连接键等可以考虑作为分布列。

2 DM MPP 环境搭建

实例名 EP01 EP02

3 安装用户

[root@localhost /]# groupadd dinstall -g 1002创建用户组dinstall  
[root@localhost /]# useradd -g dinstall dmdba -u 1002创建属于dinstall用户组的用户dmdba
[root@localhost /]# passwd dmdba
输入一次密码
重新输入一次密码
创建成功 
[root@localhost /]# mkdir /dm/dmdbms
[root@localhost /]# mkdir /dm/dmbak
[root@localhost /]# chown -R dmdba:dinstall /dm
[root@localhost /]# chown -R dmdba:dinstall /dbdata
[root@localhost /]# chown -R dmdba:dinstall /arch

4 配置 dmdba 用户环境变量

[dmdba@DM101 ~]$ cat .bash_profile 


# .bash_profile

# Get the aliases and functions
if [ -f ~/.bashrc ]; then
    . ~/.bashrc
fi

# User specific environment and startup programs

PATH=$PATH:$HOME/bin

export PATH

export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/dm/dmdbms/bin
export DM_HOME=/dm/dmdbms
export PATH=$PATH:$HOME/bin:$DM_HOME/bin:$DM_HOME/script/root:$DM_HOME/tool
 

5 设置最大文件打开数

[root@localhost /]# cp /etc/security/limits.conf /etc/security/limits.conf.bak
[root@localhost /]# vim /etc/security/limits.conf添加以下内容
dmdba  soft      nice       0
dmdba  hard      nice       0
dmdba  soft      as         unlimited
dmdba  hard      as         unlimited
dmdba  soft      fsize      unlimited
dmdba  hard      fsize      unlimited
dmdba  soft      nproc      65536
dmdba  hard      nproc      65536
dmdba  soft      nofile     65536
dmdba  hard      nofile     65536
dmdba  soft      core       unlimited
dmdba  hard      core       unlimited
dmdba  soft      data       unlimited
dmdba  hard      data       unlimited
 

临时生效:ulimit -n 65536

6 调整 Sysctl.conf

cp /etc/sysctl.conf /etc/sysctl.conf.bak
vim /etc/sysctl.conf

vm.swappiness = 0

fs.file-max = 6815744    
fs.aio-max-nr = 1048576    
kernel.shmall = 2097152    
kernel.shmmax = 2147483648    
kernel.shmmni = 4096    
kernel.sem = 250 32000 100 128
net.ipv4.ip_local_port_range = 9000 65500    
net.core.rmem_default = 4194304    
net.core.rmem_max = 4194304    
net.core.wmem_default = 262144    
net.core.wmem_max = 1048576

vm.dirty_background_ratio = 3
vm.dirty_ratio = 80
vm.dirty_expire_centisecs = 500
vm.dirty_writeback_centisecs = 100
 

sysctl –p 立即生效

7确认login配置

vim /etc/pam.d/login添加以下内容
session    required        /lib64/security/pam_limits.so
session    required        pam_limits.so
 

8 关闭 selinux

setenforce 0
vim /etc/sysconfig/selinux
 

9 命令行安装

./DMInstall.bin –i
 

10 初始化实例

dminit PATH=/dbdata DB_NAME=EP1 INSTANCE_NAME=MPP1 PORT_NUM=5236
 

11 配置文件

dm.ini

分别对两个实例的 dm.ini 进行配置
/dmdba/dmdbms/data/DAMENG
修改MPP1的dm.ini的以下几个参数如下:

INSTANCE_NAME = MPP1
PORT_NUM = 5236
MAL_INI = 1
MPP_INI = 1
 

修改MPP2的dm.ini的以下几个参数如下:

INSTANCE_NAME = MPP2 
PORT_NUM = 5237
MAL_INI = 1
MPP_INI = 1
 

配置 dmmal.ini

为两个MPP配置dmmal.ini如下,配置完全一样,MPP间可互相拷贝。dmmal.ini 与dm.ini放在相同的目录下。

[MAL_INST1]
MAL_INST_NAME = MPP1
MAL_HOST = 172.16.1.81
MAL_PORT = 5269
MAL_INST_HOST = 192.168.1.81
MAL_INST_PORT = 5236
[MAL_INST2]
MAL_INST_NAME = MPP2
MAL_HOST = 172.16.1.82
MAL_PORT = 5270
MAL_INST_HOST = 192.168.1.82
MAL_INST_PORT = 5237
 

配置 dmmpp.ctl

[SERVICE_NAME1]
 MPP_SEQ_NO = 0
 MPP_INST_NAME = MPP1
 
[SERVICE_NAME2] 
 MPP_SEQ_NO = 1
 MPP_INST_NAME = MPP2
 

使用 DM 提供的工具 dmctlcvt 将 dmmpp.ini 转换成 dmmpp.ctl,dmctlcvt 工具在 DM 安装目录的“bin”子目录中。转换生成的 dmmpp.ctl 需要放在与 dm.ini 同一个目录。

/dm/dmdbms/bin/dmctlcvt TYPE=2 SRC=/dm/dmdbms/data/MPP1/dmmpp.ini DEST=/dm/dmdbms/data/MPP1/dmmpp.ctl
将生成的 dmmpp.ctl 拷贝至另一 EP,保证 MPP 系统中所有 EP 的 dmmpp.ctl 完全相同。

12 运行 MPP

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

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值