当前位置: 首页 > article >正文

达梦数据库-数据共享集群部署

DSC集群部署

DM 数据共享集群又称为 DM 共享存储集群,英文全称 DM Data Shared Cluster,简称 DMDSC。
DM 共享存储数据库集群,允许多个数据库实例同时访问、操作同一数据库,具有高可用、高性能、负载均衡等特性。DMDSC 支持故障自动切换和故障自动重加入,某一个数据库实例故障后,不会导致数据库服务无法提供。

部署规划

以常用的2节点DSC集群为例
IP规划:

主机名服务ip心跳ip数据库名实例名
dm01192.168.10.101192.168.10.101DSCDSC1
dm02192.168.10.102192.168.10.102DSCDSC2

端口规划:

实例名实例端口MAL系统端口CSS端口ASM端口ASM的MAL端口DCR检查实例端口
DSC1523692369341935172369741
DSC2523692369341935172369741

共享存储规划:
磁盘组 大小
DCR 1G
VOTE 1G
LOG 5G
DATA 18G
ARCH 5G

目录规划:(在对应服务器上创建目录owner为dmdba组为dinstall)
数据库软件安装目录 /home/dmdba/dmdbms
DSC配置文件目录 /home/dmdba/config
备份文件存放目录 /dmdata/dmbak/
DSC1本地归档目录 +DMARCH/dsc1
DSC1远程归档目录 +DMARCH/dsc2
DSC2本地归档目录 +DMARCH/dsc2
DSC2远程归档目录 +DMARCH/dsc1

操作系统配置

该步骤与单机部署一致,详情见 达梦数据库单机部署步骤

数据库软件安装

该步骤与单机部署一致,详情见 达梦数据库单机部署步骤

DSC集群部署配置

本地环境创建共享存储

这里我以windows+虚拟机环境为例
在cmd界面用命令手动创建共享磁盘

.\vmware-vdiskmanager.exe -c -s 40G -a lsilogic -t 2 "D:\DMshare\SHARE.vmdk" 

在这里插入图片描述
虚拟机添加共享磁盘(虚拟机处于关机状态操作)
dsc01

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

找到虚拟机文件,编辑文件追加两行参数

disk.locking="FALSE"
Scsi1:1.SharedBus="Virtual"

在这里插入图片描述
在这里插入图片描述
dsc02步骤按上述步骤添加硬盘即可
在这里插入图片描述
检查两台虚拟机磁盘配置情况
在这里插入图片描述
在这里插入图片描述

磁盘分区(一台机器配置即可,配置完成后另外一台重启)
示例如下:

[root@dsc01 ~]# fdisk /dev/sdb
欢迎使用 fdisk (util-linux 2.23.2)。
命令(输入 m 获取帮助):n
Partition type:
   p   primary (0 primary, 0 extended, 4 free)
   e   extended
Select (default p):
Using default response p
分区号 (1-4,默认 1):
起始 扇区 (2048-83886079,默认为 2048):
将使用默认值 2048
Last 扇区, +扇区 or +size{K,M,G} (2048-83886079,默认为 83886079):+1G
分区 1 已设置为 Linux 类型,大小设为 1 GiB

在这里插入图片描述
在这里插入图片描述

编辑磁盘配置文件/etc/udev/rules.d/99-dm-asmdevices.rules(2台机器均需配置)
修改文件内容如下:

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=="sdb5", RUN+="/bin/raw /dev/raw/raw4 %N"
ACTION=="add", KERNEL=="sdb6", RUN+="/bin/raw /dev/raw/raw5 %N"
ACTION=="add",KERNEL=="raw[1-5]", OWNER="dmdba", GROUP="dinstall", MODE="660"

执行命令,绑定裸设备(2台机器均需配置)

partprobe /dev/sdb
udevadm control --reload-rules
udevadm trigger --type=devices --action=change

查看裸设备大小
在这里插入图片描述
在这里插入图片描述

配置dmdcr_cfg.ini文件(双节点)

创建配置文件存放目录,2 个节点都要执行,使用 dmdba 用户,执行以下命令:
mkdir -p /home/dmdba/config
新建 dmdcr_cfg.ini 文件,添加文件内容如下:
vi /home/dmdba/config/dmdcr_cfg.ini

DCR_N_GRP = 3
DCR_VTD_PATH = /dev/raw/raw2
DCR_OGUID = 63635
[GRP]
DCR_GRP_TYPE = CSS
DCR_GRP_NAME = GRP_CSS
DCR_GRP_N_EP = 2
DCR_GRP_DSKCHK_CNT = 60
[GRP_CSS]
DCR_EP_NAME = CSS0
DCR_EP_HOST = 192.168.10.101
DCR_EP_PORT = 9341
[GRP_CSS]
DCR_EP_NAME = CSS1
DCR_EP_HOST = 192.168.10.102
DCR_EP_PORT = 9343
[GRP] #组2 ASM
DCR_GRP_TYPE = ASM
DCR_GRP_NAME = GRP_ASM
DCR_GRP_N_EP = 2
DCR_GRP_DSKCHK_CNT = 60
[GRP_ASM]
DCR_EP_NAME = ASM0
DCR_EP_SHM_KEY = 93360
DCR_EP_SHM_SIZE = 10
DCR_EP_HOST = 192.168.10.101
DCR_EP_PORT = 9349
DCR_EP_ASM_LOAD_PATH = /dev/raw
[GRP_ASM]
DCR_EP_NAME = ASM1
DCR_EP_SHM_KEY = 93361
DCR_EP_SHM_SIZE = 10
DCR_EP_HOST = 192.168.10.102
DCR_EP_PORT = 9351
DCR_EP_ASM_LOAD_PATH = /dev/raw
[GRP] #组3 DB
DCR_GRP_TYPE = DB
DCR_GRP_NAME = GRP_DSC
DCR_GRP_N_EP = 2
DCR_GRP_DSKCHK_CNT = 60
[GRP_DSC]
DCR_EP_NAME = DSC0
DCR_EP_SEQNO = 0
DCR_CHECK_PORT = 9741
DCR_EP_PORT = 5236
[GRP_DSC]
DCR_EP_NAME = DSC1
DCR_EP_SEQNO = 1
DCR_CHECK_PORT = 9742
DCR_EP_PORT = 5236

dmasmcmd初始化(单节点)

cd /home/dmdba/dmdbms/bin
./dmasmcmd
create dcrdisk '/dev/raw/raw1' 'dcr'
create votedisk '/dev/raw/raw2' 'vote'
create asmdisk '/dev/raw/raw3' 'LOG'
create asmdisk '/dev/raw/raw4' 'DATA'
create asmdisk '/dev/raw/raw5' 'ARCH'
init dcrdisk '/dev/raw/raw1' from '/home/dmdba/config/dmdcr_cfg.ini' identified by 'abcd'
init votedisk '/dev/raw/raw2' from '/home/dmdba/config/dmdcr_cfg.ini'

配置dmasvrmal.ini文件(双节点)

添加 /home/dmdba/config/dmasvrmal.ini 文件内容如下:

[MAL_INST1]
 MAL_INST_NAME = ASM0
 MAL_HOST = 192.168.10.101
 MAL_PORT = 7236
[MAL_INST2]
 MAL_INST_NAME = ASM1
 MAL_HOST = 192.168.10.102
 MAL_PORT = 7237

配置dmdcr.ini文件(双节点)

dsc01:
添加 /home/dmdba/config/dmdcr.ini 文件内容如下:

DMDCR_PATH=/dev/raw/raw1
DMDCR_MAL_PATH=/home/dmdba/config/dmasvrmal.ini
DMDCR_SEQNO = 0
#ASM 重启参数,命令行方式启动
DMDCR_ASM_RESTART_INTERVAL = 0
DMDCR_ASM_STARTUP_CMD=/home/dmdba/dmdbms/bin/dmasmsvr dcr_ini=/home/dmdba/config/dmdcr.ini
#DB 重启参数,命令行方式启动
DMDCR_DB_RESTART_INTERVAL = 0
DMDCR_DB_STARTUP_CMD=/home/dmdba/dmdbms/bin/dmserver path=/home/dmdba/config/dsc0_config/dm.ini dcr_ini=/home/dmdba/config/dmdcr.ini

dsc02:
添加 /home/dmdba/config/dmdcr.ini 文件内容如下:

DMDCR_PATH = /dev/raw/raw1
DMDCR_MAL_PATH =/home/dmdba/config/dmasvrmal.ini
DMDCR_SEQNO = 1
#ASM 重启参数,命令行方式启动
DMDCR_ASM_RESTART_INTERVAL = 0
DMDCR_ASM_STARTUP_CMD = /home/dmdba/dmdbms/bin/dmasmsvr dcr_ini=/home/dmdba/config/dmdcr.ini
#DB 重启参数,命令行方式启动
DMDCR_DB_RESTART_INTERVAL = 0
DMDCR_DB_STARTUP_CMD=/home/dmdba/dmdbms/bin/dmserver path=/home/dmdba/config/dsc1_config/dm.ini dcr_ini=/home/dmdba/config/dmdcr.ini

启动DMCSS、DMASM服务程序(双节点)

cd /home/dmdba/dmdbms/bin/service_template/
cp DmCSSService dmcssserverd
vi dmcssserverd

##修改以下内容
DCR_INI_PATH=/home/dmdba/config/dmdcr.ini

cp dmcssserverd …/

cp DmASMSvrService dmasmserverd
vi dmasmserverd

##修改以下内容
DCR_INI_PATH=/home/dmdba/config/dmdcr.ini

cp dmasmserverd …/

cd /home/dmdba/dmdbms/bin/
./dmcssserverd start
./dmasmserverd start

使用dmasmtool工具创建DMASM磁盘组(单节点)

cd /home/dmdba/dmdbms/bin/
./dmasmtool DCR_INI=/home/dmdba/config/dmdcr.ini
#创建日志磁盘组
create diskgroup ‘DMLOG’ asmdisk ‘/dev/raw/raw3’
#创建数据磁盘组
create diskgroup ‘DMDATA’ asmdisk ‘/dev/raw/raw4’
#创建归档磁盘组
create diskgroup ‘DMARCH’ asmdisk ‘/dev/raw/raw5’
exit
在这里插入图片描述

配置dminit.ini文件(单节点)

添加 /home/dmdba/config/dminit.ini 文件内容如下:

db_name = dsc
system_path = +DMDATA/data
system = +DMDATA/data/dsc/system.dbf
system_size = 128
roll = +DMDATA/data/dsc/roll.dbf
roll_size = 128
main = +DMDATA/data/dsc/main.dbf
main_size = 128
ctl_path = +DMDATA/data/dsc/dm.ctl
ctl_size = 8
log_size = 256
dcr_path = /dev/raw/raw1 #dcr 磁盘路径,目前不支持 asm,只能是裸设备
dcr_seqno = 0
auto_overwrite = 1
[DSC0] #inst_name 跟 dmdcr_cfg.ini 中 DB 类型 group 中 DCR_EP_NAME 对应
config_path = /home/dmdba/config/dsc0_config
port_num = 5236
mal_host = 192.168.10.101
mal_port = 9340
log_path = +DMLOG/log/dsc0_log01.log
log_path = +DMLOG/log/dsc0_log02.log
[DSC1] #inst_name 跟 dmdcr_cfg.ini 中 DB 类型 group 中 DCR_EP_NAME 对应
config_path = /home/dmdba/config/dsc1_config
port_num = 5236
mal_host = 192.168.10.102
mal_port = 9341
log_path = +DMLOG/log/dsc1_log01.log
log_path = +DMLOG/log/dsc1_log02.log

使用dminit初始化DB环境(单节点)

cd /home/dmdba/dmdbms/bin/
./dminit control=/home/dmdba/config/dminit.ini
在这里插入图片描述

cd /home/dmdba/config/
scp -rp dsc1_config/ dmdba@192.168.10.102:/home/dmdba/config/

添加归档配置文件(双节点)

dsc01
修改 /home/dmdba/config/dsc0_config/dm.ini 文件内容如下:

ARCH_INI=1

添加 /home/dmdba/config/dmarch.ini 文件内容如下:

[ARCHIVE_LOCAL1]
ARCH_TYPE=LOCAL
ARCH_DEST=+DMARCH/ARCH_DSC1
ARCH_FILE_SIZE=2048
ARCH_SPACE_LIMIT=20480
[ARCHIVE_REMOTE1]
ARCH_TYPE=REMOTE
ARCH_DEST=DSC2
ARCH_INCOMING_PATH=+DMARCH/ARCH_DSC2
ARCH_FILE_SIZE=2048
ARCH_SPACE_LIMIT=20480
ARCH_LOCAL_SHARE=1

dsc02
修改 /home/dmdba/config/dsc1_config/dm.ini文件内容如下:

ARCH_INI=1

添加 /home/dmdba/config/dmarch.ini 文件内容如下:

[ARCHIVE_LOCAL1]
ARCH_TYPE=LOCAL
ARCH_DEST=+DMARCH/ARCH_DSC2
ARCH_FILE_SIZE=2048
ARCH_SPACE_LIMIT=20480
[ARCHIVE_REMOTE1]
ARCH_TYPE=REMOTE
ARCH_DEST=DSC1
ARCH_INCOMING_PATH=+DMARCH/ARCH_DSC1
ARCH_FILE_SIZE=2048
ARCH_SPACE_LIMIT=20480
ARCH_LOCAL_SHARE=1

启动数据库服务(双节点)

dsc01
cd /home/dmdba/dmdbms/bin/service_template/
cp DmService dmserverd
vi dmserverd

##修改以下内容
INI_PATH=/home/dmdba/config/dsc0_config/dm.ini
DCR_INI_PATH=/home/dmdba/config/dmdcr.ini

cp dmserverd …/
cd /home/dmdba/dmdbms/bin/
./dmserverd start

dsc02
cd /home/dmdba/dmdbms/bin/service_template/
cp DmService dmserverd
vi dmserverd

##修改以下内容
INI_PATH=/home/dmdba/config/dsc1_config/dm.ini
DCR_INI_PATH=/home/dmdba/config/dmdcr.ini

cp dmserverd …/
cd /home/dmdba/dmdbms/bin/
./dmserverd start

监控DMDSC

配置dmcssm.ini(单节点)

添加 /home/dmdba/config/dmcssm.ini 文件内容如下:

#和 dmdcr_cfg.ini 中的 DCR_OGUID 保持一致
CSSM_OGUID = 63635 
#配置所有 CSS 的连接信息,
#和 dmdcr_cfg.ini 中 CSS 配置项的 DCR_EP_HOST 和 DCR_EP_PORT 保持一致
CSSM_CSS_IP = 192.168.10.101:9341
CSSM_CSS_IP = 192.168.10.102:9343
CSSM_LOG_PATH =/home/dmdba/dmdbms/log #监视器日志文件存放路径
CSSM_LOG_FILE_SIZE = 32 #每个日志文件最大 32M
CSSM_LOG_SPACE_LIMIT = 0 #不限定日志文件总占用空间

启动dmcssm监视器

cd /home/dmdba/dmdbms/bin/

./dmcssm  INI_PATH=/home/dmdba/config/dmcssm.ini

show
在这里插入图片描述

dmcssm命令说明

命令名称含义
help显示帮助信息
show [group_name]显示指定的组信息,如果没有指定 group_name,则显示所有组信息
show config显示 dmdcr_cfg.ini 的配置信息
show monitor显示当前连接到主 CSS 的所有监视器信息
set group_name auto restart on打开指定组的自动拉起功能(只修改 dmcss 内存值)
set group_name auto restart off关闭指定组的自动拉起功能(只修改 dmcss 内存值)
open force group_name强制 open 指定的 ASM 或 DB 组
ep startup group_name启动指定的 ASM 或 DB 组
ep stop group_name退出指定的 ASM 或 DB 组
ep halt group_name.ep_name强制退出指定组中的指定节点
extend node联机扩展节点
ep crash group_name.ep_name手动指定节点故障
check crash over group_name检查指定组故障处理是否真正结束
exit退出监视器

到此就完成了达梦数据库DSC集群的部署。

更多详细资料可前往达梦社区:https://eco.dameng.com


http://www.kler.cn/a/452369.html

相关文章:

  • 简述Git中如何将一个新增文件添加到本地仓库?
  • CentOS7下的vsftpd服务器和客户端
  • 事件抽取tr、ti、ar 和 ai的意思(触发词、事件类型、事件参数、参数的类型)
  • Yolo11改策略:卷积改进|SAC,提升模型对小目标和遮挡目标的检测性能|即插即用
  • Kafka可视化工具 Offset Explorer (以前叫Kafka Tool)
  • openwrt 负载均衡方法 openwrt负载均衡本地源接口
  • vue3导入excel并解析excel数据渲染到表格中,纯前端实现。
  • CSS 居中技术完全指南:从基础到高级应用
  • SpeedTree For UE5学习笔记
  • 分布式Python计算服务MaxFrame使用心得
  • <代码随想录> 算法训练营-2024.12.25
  • Linux零基础速成篇一(理论+实操)
  • 强力巨彩租赁屏技术更新,适用多种户外应用场景
  • xtu oj 1614 数字(加强版)
  • 【Super Tilemap Editor使用详解】(十一):画笔(Brushes)
  • SSE 流式场景应用 及 方案总结
  • 教育行业 UI 设计基础篇:简洁直观的风格打造
  • 【UE5.3.2】安装metahuman插件
  • 3D景深融合显微镜
  • Linux文件的压缩和解压
  • 本地部署 Go File 文件服务并实现外部访问
  • 负载均衡器到底是个啥?
  • 【每日学点鸿蒙知识】压力测试、Web组件拦截器、nfc开关状态、定位能力、rn支持的三方库
  • Redis——双写一致性
  • 【iOS安全】Block开发与逆向
  • jupyter-lab与实验室服务器远程链接