DM8 DSC介绍
DM 共享存储数据库集群的英文全称 DM Data Shared Cluster,简称 DMDSC。DMDSC是达梦数据库的共享存储集群,采用多个实例,单个存储的架构,可以实现单实例数据库无法实现的负载均衡。DM DSC集群可以自动处理节点故障及故障切换,不影响对外正常服务,保证系统的高可用性。目前DM DSC支持最多八节点环境的搭建,集群主要由数据库和数据库实例、共享存储、本地存储、通信网络、以及集群控制软件DMCSS组成。
通过在应用服务器上配置dm_svc.conf的参数实现DM DSC透明连接:
SWITCH_TIME=(5000)#重试次数
SWITCH_INTERVAL=(1000)#重试时间间隔,单位毫秒
DSC=(223.254.20.241:5850,223.254.20.242:5850)
#服务名=(节点1:端口号,节点2:端口号)
DM8 DSC搭建方法
环境准备
两台相同配置虚拟机
挂载共享存储(不少于20G)
VM需要在两台虚拟机路径下xxx.vmx文件中加入disk.locking = “FALSE” 参数,否则后启动的虚拟机会启动失败。
操作系统:kylin v10 linux
裸设备划分
使用fdisk命令将共享存储划分为四个分区
前两个分区大小为100M,第三个分区不少于2G(该分区过小可能会出现启动dmserver闪退、创建ASM磁盘组时连接失败等报错)
绑定裸设备
编辑 /etc/udev/rules.d/60-raw.rules 文件,将以下内容添加至文件,两台节点均需操作
————————————————
版权声明:本文为CSDN博主「Shine Leon」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/NinjaKilling/article/details/126948793
裸设备划分
使用fdisk命令将共享存储划分为四个分区
前两个分区大小为100M,第三个分区不少于2G(该分区过小可能会出现启动dmserver闪退、创建ASM磁盘组时连接失败等报错)
绑定裸设备
编辑 /etc/udev/rules.d/60-raw.rules 文件,将以下内容添加至文件,两台节点均需操作
ACTION=="add", KERNEL=="sdb1", RUN+="/bin/raw /dev/raw/raw1 %N"
ACTION=="add", KERNEL=="sdb2", RUN+="/bin/raw /dev/raw/raw2 %N"
ACTION=="add", KERNEL=="sdb3", RUN+="/bin/raw /dev/raw/raw3 %N"
ACTION=="add", KERNEL=="sdb4", RUN+="/bin/raw /dev/raw/raw4 %N"
ACTION=="add", KERNEL=="raw[1-4]", OWNER="root", GROUP="root", MODE="660"
(两节点分别执行partprobe /dev/sdb,通知系统分区表的变化)
最后执行start_udev,完成裸设备绑定
安装数据库、创建配置文件目录
分别在两个节点安装数据库,创建配置文件目录
准备dmdcr_cfg.ini,并执行初始化
在配置文件目录下准备dmdcr_cfg.ini,具体内容参照手册。
运行dmasmcmd,依次执行以下内容
create dcrdisk '/dev/raw/raw1' 'dcr'
create votedisk '/dev/raw/raw2' 'vote'
create asmdisk '/dev/raw/raw3' 'LOG0'
create asmdisk '/dev/raw/raw4' 'DATA0'
init dcrdisk '/dev/raw/raw1' from '/home/data/dmdcr_cfg.ini' identified by 'abcd'
init votedisk '/dev/raw/raw2' from '/home/data/dmdcr_cfg.ini'
准备dmasvrmal.ini
在配置文件目录下准备dmasvrmal.ini,具体内容如下。
[MAL_INST1]
MAL_INST_NAME = ASM0
MAL_HOST = 192.168.1。119
MAL_PORT = 7236
[MAL_INST2]
MAL_INST_NAME = ASM1
MAL_HOST = 192.168.1.120
MAL_PORT = 7236
将dmasvrmal.ini拷贝至每个节点配置文件路径下
准备dmdcr.ini
在两个节点配置文件目录下准备dmdcr.ini,具体内容如下。
DMDCR_PATH = /dev/raw/raw1
DMDCR_MAL_PATH =/home/data/dmasvrmal.ini #dmasmsvr使用的MAL配置文件路径
DMDCR_SEQNO = 0 # DSC1节点为1
DMDCR_ASM_RESTART_INTERVAL = 0 #ASM重启参数,命令行方式启动
DMDCR_ASM_STARTUP_CMD = /home/dmdba/dmdbms/bin/dmasmsvr
dcr_ini=/home/data/dmdcr.ini
DMDCR_DB_RESTART_INTERVAL = 0 #DB重启参数,命令行方式启动
DMDCR_DB_STARTUP_CMD = /home/dmdba/dmdbms/bin/dmserver
path=/home/data/dsc0_config/dm.ini
dcr_ini=/home/data/dmdcr.ini
启动DMCSS与DMASM服务
两个节点依次启动DMCSS与DMASM服务
./dmcss DCR_INI=/home/data/dmdcr.ini
./dmasmsvr DCR_INI=/home/data/dmdcr.ini
使用dmasmtool工具创建DMASM磁盘组
选择一个节点,启动dmasmtool工具。
./dmasmtool DCR_INI=/home/data/dmdcr.ini
输入下列语句创建DMASM磁盘组:
#创建日志磁盘组
create diskgroup 'DMLOG' asmdisk '/dev/raw/raw3'
#创建数据磁盘组
create diskgroup 'DMDATA' asmdisk '/dev/raw/raw4'
准备dminit.ini并初始化库
选择一个节点,在配置文件路径下准备dminit.ini文件,具体内容参照手册。
执行:
./dminit control=/home/data/dminit.ini #初始化库
拷贝配置文件路径下生成的dsc1_config目录到另外节点
启动数据库服务器
两节点分别启动dmserver服务,即可完成DSC搭建
./dmserver /home/data/dsc0_config/dm.ini dcr_ini=/home/data/dmdcr.ini
./dmserver /home/data/dsc1_config/dm.ini dcr_ini=/home/data/dmdcr.ini
达梦在线服务平台:https://eco.dameng.com