达梦数据库系列—23. DSC集群搭建

目录

DSC搭建

1、环境准备

1.硬件

2.存储设备

3.操作系统

4.网络配置

5.防火墙

6.Selinux检查

7.用户准备

8.目录规划

9.软件安装

10.磁盘准备

[2、搭建两节点 DMDSC](#2、搭建两节点 DMDSC)

[1.准备配置文件 dmdcr_cfg.ini](#1.准备配置文件 dmdcr_cfg.ini)

[2.使用 DMASMCMD 工具初始化所有磁盘](#2.使用 DMASMCMD 工具初始化所有磁盘)

[3.使用 dmdcr_cfg.ini 配置文件初始化 dcrdisk 和 votedisk](#3.使用 dmdcr_cfg.ini 配置文件初始化 dcrdisk 和 votedisk)

4.准备dmasvrmal.ini

[5.配置 dmdcr.ini](#5.配置 dmdcr.ini)

[6.启动 DMCSS、DMASM 服务程序](#6.启动 DMCSS、DMASM 服务程序)

[7.使用 DMASMTOOL 工具创建 ASM 磁盘组](#7.使用 DMASMTOOL 工具创建 ASM 磁盘组)

[8.准备 dminit.ini 配置文件](#8.准备 dminit.ini 配置文件)

[9.使用 DMINIT 初始化一个节点的数据库环境](#9.使用 DMINIT 初始化一个节点的数据库环境)

10.使用拷贝的方式配置另外一个节点的数据库环境

11.启动数据库服务器

[12.配置并启动 DMCSSM 监视器](#12.配置并启动 DMCSSM 监视器)

13.注册服务

14.登录验证

15.启动/关闭集群


DSC搭建

集群规划

|--------------|--------------|--------------------------------|------------------|-------------------|
| 节点机器 | 实例名称 | IP | PORT_NUM | DCR_OGUID |
| 111 | CSS0 | 192.168.64.111 192.168.169.111 | 9836 | 63635 |
| 111 | ASM0 | 192.168.64.111 192.168.169.111 | 5836 | 63635 |
| 111 | DSC01 | 192.168.64.111 192.168.169.111 | 6636 | 63635 |
| 112 | CSS1 | 192.168.64.112 192.168.169.111 | 9837 | 63635 |
| 112 | ASM1 | 192.168.64.112 192.168.169.111 | 5837 | 63635 |
| 112 | DSC02 | 192.168.64.112 192.168.169.111 | 6637 | 63635 |

1、 环境准备

1. 硬件

两台相同配置的机器,需要2块网卡。

2. 存储设备

4 块由存储服务器提供的共享存储磁盘,存储服务器通过 SAN 交换机与两台机器相连提供存储服务。

3. 操作系统

同一套 DMDSC 环境要求其所在机器的操作系统相同。

4. 网络配置

两块网卡一个为内网网段,一个为外网网段。

5.防火墙

##防止 Linux 防火墙影响数据库的运行,设置开机禁用防火墙并关闭防火墙。

root@localhost dmdba\]#systemctl disable firewalld \[root@localhost dmdba\]#systemctl stop firewalld ##### ******6.Selinux检查****** \[root@localhost dmdba\]#setenforce 0 \[root@localhost dmdba\]#vim /etc/selinux/config ##设置 selinux 状态为关闭 SELINUX=disabled ##修改后,保存退出 ##### ******7.**** ****用户准备****** #新建组dinstall和用户dmdba groupadd dinstall useradd -g dinstall dmdba #为用户dmdba设置密码 passwd dmdba #用户输入密码 ##### ******8.**** ****目录规划****** 两机器都要做。 dmdba 用户创建用于 DSC 环境搭建的目录:/dm 配置文件存放于目录:/dm/config ##### ******9.软件安装****** 步骤略 ##### ******10.**** ****磁盘准备****** 两机器都要做。 使用 UDEV 工具来固定磁盘。 编写/etc/udev/rules.d/60-raw.rules 配置信息 ACTION=="add",KERNEL=="sdb1",RUN+="/bin/raw /dev/raw/raw1 %N;" ACTION=="add",KERNEL=="sdc1",RUN+="/bin/raw /dev/raw/raw2 %N" ACTION=="add",KERNEL=="sdd1",RUN+="/bin/raw /dev/raw/raw3 %N" ACTION=="add",KERNEL=="sde1",RUN+="/bin/raw /dev/raw/raw4 %N" ACTION=="add",KERNEL=="raw\[1-4\]", OWNER="dmdba", GROUP="dinstall",MODE="660" 1. 重启 udev 服务。 udevadm trigger --type=devices --action=change 查看磁盘权限信息如下: \[dmdba@test111 \~\]# ll /dev/raw/ 总用量 0 crw-rw---- 1 dmdba dinstall 162, 1 7月 9 00:29 raw1 crw-rw---- 1 dmdba dinstall 162, 2 7月 9 01:16 raw2 crw-rw---- 1 dmdba dinstall 162, 3 7月 9 01:15 raw3 crw-rw---- 1 dmdba dinstall 162, 4 7月 9 01:06 raw4 crw-rw---- 1 root disk 162, 0 7月 8 23:28 rawctl **#如果清空裸设备:** **#dd if=/dev/zero of=/dev/raw/raw1** #### ******2、**** ****搭建两节点 DMDSC****** ##### ******1.准备配置文件**** ****dmdcr_cfg.ini****** 保存到 111 机器的/dm/config 下。 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.64.111

DCR_EP_PORT = 9836

GRP_CSS

DCR_EP_NAME = CSS1

DCR_EP_HOST = 192.168.64.112

DCR_EP_PORT = 9837

GRP

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= 64735

DCR_EP_SHM_SIZE= 512

DCR_EP_HOST= 192.168.64.111

DCR_EP_PORT= 5836

DCR_EP_ASM_LOAD_PATH= /dev/raw

GRP_ASM

DCR_EP_NAME= ASM1

DCR_EP_SHM_KEY= 54736

DCR_EP_SHM_SIZE= 512

DCR_EP_HOST= 192.168.64.112

DCR_EP_PORT= 5837

DCR_EP_ASM_LOAD_PATH= /dev/raw

GRP

DCR_GRP_TYPE= DB

DCR_GRP_NAME= GRP_DSC

DCR_GRP_N_EP= 2

DCR_GRP_DSKCHK_CNT= 60

GRP_DSC

DCR_EP_NAME= DSC01

DCR_EP_SEQNO= 0

DCR_EP_PORT= 6636

GRP_DSC

DCR_EP_NAME= DSC02

DCR_EP_SEQNO= 1

DCR_EP_PORT= 6637

2.使用 DMASMCMD 工具初始化所有磁盘

在 111 机器使用 DMASMCMD 工具初始化所有磁盘

./dmasmcmd

create dcrdisk '/dev/raw/raw1' 'DCR'

create votedisk '/dev/raw/raw2' 'VOTE'

create asmdisk '/dev/raw/raw3' 'DMLOG'

create asmdisk '/dev/raw/raw4' 'DMDATA'

3.使用 dmdcr_cfg.ini 配置文件初始化 dcrdisk 和 votedisk

init dcrdisk '/dev/raw/raw1' from '/dm/config/dmdcr_cfg.ini' identified by 'SYSDBA'

init votedisk '/dev/raw/raw2' from '/dm/config/dmdcr_cfg.ini'

检查:

listdisks '/dev/raw/'

4.准备 dmasvrmal.ini

准备DMASM 的MAL配置文件dmasvrmal.ini保存到 111 的/dm/config 下。

MAL_INST1

MAL_INST_NAME= ASM0

MAL_HOST= 192.168.64.111

MAL_PORT= 4836

MAL_INST2

MAL_INST_NAME= ASM1

MAL_HOST= 192.168.64.112

MAL_PORT= 4837

为 DSC02 配置 dmasvrmal.ini,和 DSC01 的 dmasvrmal.ini 内容完全一样。保存到 112 的/dm/config 下。

5.配置 dmdcr.ini

为 DSC01和DSC02 配置 dmdcr.ini,保存到/dm/config 下。

DMDCR_PATH = /dev/raw/raw1

DMDCR_MAL_PATH = /dm/config/dmasvrmal.ini

DMDCR_SEQNO = 0

DMDCR_ASM_RESTART_INTERVAL = 0

DMDCR_ASM_STARTUP_CMD = /dm/bin/dmasmsvr dcr_ini=/dm/config/dmdcr.ini

DMDCR_DB_RESTART_INTERVAL = 0

DMDCR_DB_STARTUP_CMD = /dm/bin/dmserver path=/dm/config/DSC01_conf/dm.ini dcr_ini=/dm/config/dmdcr.ini

DMDCR_PATH = /dev/raw/raw1

DMDCR_MAL_PATH = /dm/config/dmasvrmal.ini

DMDCR_SEQNO = 1

DMDCR_ASM_RESTART_INTERVAL = 0

DMDCR_ASM_STARTUP_CMD = /dm/bin/dmasmsvr dcr_ini=/dm/config/dmdcr.ini

DMDCR_DB_RESTART_INTERVAL = 0

DMDCR_DB_STARTUP_CMD = /dm/bin/dmserver path=/dm/config/DSC02_conf/dm.ini dcr_ini=/dm/config/dmdcr.ini

6.启动 DMCSS、DMASM 服务程序

主节点 111 启动 DMCSS:

./dmcss dcr_ini=/dm/config/dmdcr.ini

另一节点 112 启动 DMCSS:

./dmcss dcr_ini=/dm/config/dmdcr.ini

主节点 111 启动 DMASMSVR:

./dmasmsvr dcr_ini=/dm/config/dmdcr.ini

另一节点 112 启动 DMASMSVR:

./dmasmsvr dcr_ini=/dm/config/dmdcr.ini

7.使用 DMASMTOOL 工具创建 ASM 磁盘组

在 111 上登录创建:

./dmasmtool dcr_ini=/dm/config/dmdcr.ini

#创建DATA磁盘组

create diskgroup 'DMDATA' asmdisk '/dev/raw/raw4'

#创建LOG磁盘组

create diskgroup 'DMLOG' asmdisk '/dev/raw/raw3'

ls --查看磁盘组信息是否正确

lsdsk --查看磁盘详细信息

8.准备 dminit.ini 配置文件

在111机器上准备dminit.ini 配置文件,保存到/dm/config 目录下。

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

LOG_SIZE= 2048

DCR_PATH= /dev/raw/raw1

DCR_SEQNO= 0

AUTO_OVERWRITE= 1

PAGE_SIZE = 16

EXTENT_SIZE = 16

DSC01

CONFIG_PATH= /dm/config/DSC01_conf

PORT_NUM = 6636

MAL_HOST= 192.168.64.111

MAL_PORT= 6536

LOG_PATH= +DMLOG/log/DSC01_log1.log

LOG_PATH= +DMLOG/log/DSC01_log2.log

DSC02

CONFIG_PATH= /dm/config/DSC02_conf

PORT_NUM = 6637

MAL_HOST= 192.168.64.112

MAL_PORT= 6537

LOG_PATH= +DMLOG/log/DSC02_log1.log

LOG_PATH= +DMLOG/log/DSC02_log2.log

9.使用 DMINIT 初始化一个节点的数据库环境

选择一个节点,启动 DMINIT 初始化数据库,这里以 111 为例。DMINIT 执行完成后,会在 config_path 目录(/dm/config/DSC01_conf 和/dm/config/DSC02_conf)下生成配置文件 DM.INI 和 DMMAL.INI。

./dminit control=/dm/config/dminit.ini

10.使用拷贝的方式配置另外一个节点的数据库环境

将 111 上初始化库时产生的 DSC02 节点的配置文件(整个/dm/config/DSC02_conf 文件夹)复制到 112 机器的/dm/config/目录下。

scp -r /dm/config/DSC02_conf dmdba@192.168.100.112:/dm/config/

11.启动数据库服务器

分别启动两个节点的服务器。

111节点服务器启动:

cd /dm/bin

./dmserver dcr_ini=/dm/config/dmdcr.ini /dm/config/DSC01_conf/dm.ini

112节点服务器启动:

cd /dm/bin

./dmserver dcr_ini=/dm/config/dmdcr.ini /dm/config/DSC02_conf/dm.ini

12.配置并启动 DMCSSM 监视器

现在我们搭建监视器,配置 dmcssm.ini 文件。

DMCSSM 在任何机器上均可以启动,只要该台机器和 DMDSC 的真实机器网络是相通的,就可以监控 DMDSC 集群信息。

这里我们选择在 111 机器上搭建监视器。/dm/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.64.111:9836

CSSM_CSS_IP = 192.168.64.112:9837

CSSM_LOG_PATH = /dm/cssm_log #监视器日志文件存放路径

CSSM_LOG_FILE_SIZE = 32 #每个日志文件最大32M

CSSM_LOG_SPACE_LIMIT = 0 #不限定日志文件总占用空间

创建 DMCSSM 的日志存放路径。

mkdir -p /dm/cssm_log

启动 DMCSSM 集群监视器。

./dmcssm ini_path=/dm/config/dmcssm.ini

DMCSSM 启动之后,可使用 show 命令在 DMCSSM 监视器中查看集群状态信息。

show

至此,基于 DMASM 的 DMDSC 已经搭建完成。

13.注册服务

CSSM不创建服务

root

节点一:
./dm_service_installer.sh -t dmcss -p DSC01 -dcr_ini /dm/config/dmdcr.ini
./dm_service_installer.sh -t dmasmsvr -p DSC01 -dcr_ini /dm/config/dmdcr.ini -y DmCSSServiceDSC01
./dm_service_installer.sh -t dmserver -p DSC01 -dm_ini /dm/config/DSC01_conf/dm.ini -dcr_ini /dm/config/dmdcr.ini -y DmASMSvrServiceDSC01

守护进程:

./dm_service_installer.sh -t dmwatcher -p DSC01 -watcher_ini /dm/config/DSC01_conf/dmwatcher.ini

节点二:
./dm_service_installer.sh -t dmcss -p DSC02 -dcr_ini /dm/config/dmdcr.ini
./dm_service_installer.sh -t dmasmsvr -p DSC02 -dcr_ini /dm/config/dmdcr.ini -y DmCSSServiceDSC02
./dm_service_installer.sh -t dmserver -p DSC02 -dm_ini /dm/config/DSC02_conf/dm.ini -dcr_ini /dm/config/dmdcr.ini -y DmASMSvrServiceDSC02

守护进程:

./dm_service_installer.sh -t dmwatcher -p DSC02 -watcher_ini /dm/config/DSC02_conf/dmwatcher.ini

14.登录验证

#配置 dm_scv.conf 文件

vim /etc/dm_svc.conf

#添加:

dmdsc=(192.168.169.111:6636,192.168.169.112:6637)

disql SYSDBA@dmdsc

15.启动/关闭集群

先启动 css-再 asm-最后 server

DmCSSServiceDSC01 start

DmASMSvrServiceDSC01 start

DmServiceDSC01 start

关闭

正常关闭集群应依次退关闭[DB]、[ASM]、[CSS]各组节点

直接关闭[ASM]节点将导致对应的[DB]节点异常关闭

直接关闭[CSS]节点将导致对应的[ASM]、[DB]节点异常关闭

DmServiceDSC01 stop

DmASMSvrServiceDSC01 stop

DmCSSServiceDSC01 stop

启动监视器,dmdba 用户执行。
./dmcssm ini_path=/dm/config/dmcssm.ini

达梦技术社区:达梦数据库 - 新一代大型通用关系型数据库 | 达梦在线服务平台

相关推荐
羊小蜜.2 分钟前
Mysql 01:基础查询(SELECT)全解——从单表到多字段的完整语法
数据库·mysql·查询
猿小喵16 分钟前
记录一次从库并行回放出现死锁的问题
数据库·mysql·tdsql
随风,奔跑22 分钟前
Redis
数据库·redis·缓存
IvorySQL24 分钟前
2MB 的 PostgreSQL work_mem,如何吃掉 2TB 内存?
数据库·postgresql·开源
桑榆肖物25 分钟前
有字幕,没配音?用浏览器自带语音能力,让网页视频直接“开口说话”
数据库·edge·音视频·tts
熬夜的咕噜猫1 小时前
MySQL主从复制与读写分离
网络·数据库·mysql
道清茗1 小时前
【MySQL知识点问答题】 备份技术、Invisible Indexes 和直方图的应用
数据库·mysql
芒果披萨1 小时前
sql存储过程
java·开发语言·数据库
jnrjian1 小时前
RAC 去除node的建议 dbca 和手动方法
数据库·oracle
TlYf NTLE1 小时前
redis分页查询
数据库·redis·缓存