本文讲述的环境均是在本地的VMware虚拟机环境,仅供参考。
下面将详细的讲述DSC两节点集群搭建的操作流程和实施步骤。
指标项 | 节点一 | 节点二 |
---|---|---|
主机名 | node1 | node2 |
CSS节点名 | CSS1 | CSS2 |
ASM节点名 | ASM1 | ASM2 |
实例名 | DSC1 | DSC2 |
操作系统 | CentOS Linux 7 | CentOS Linux 7 |
数据库版本 | DM8 | DM8 |
节点IP | 192.168.2.51 | 192.168.2.52 |
心跳IP | 10.10.10.1 | 10.10.10.2 |
数据库安装路径 | /opt/dmdbms | /opt/dmdbms |
配置文件路径 | /dmdata/config | /dmdata/config |
磁盘链接路径 | /dev_dmdsc | /dev_dmdsc |
本地归档路径 | /dmarch | /dmarch |
实例端口 | 5236 | 5236 |
CSS端口 | 11286 | 11287 |
ASM端口 | 11276 | 11277 |
DCR检查端口 | 11266 | 11267 |
ASM的MAL端口 | 11256 | 11257 |
数据库的MAL端口 | 11246 | 11247 |
磁盘组名称 | 容量/GB | 数量/块 | 存储路径 |
---|---|---|---|
DCR | 1 | 1 | W:\VMware\DSC\dcr_disk1.vmdk |
VOTE | 1 | 1 | W:\VMware\DSC\vote_disk1.vmdk |
DMDATA | 10 | 1 | W:\VMware\DSC\dmdata_disk1.vmdk |
DMLOG | 10 | 1 | W:\VMware\DSC\dmlog_disk1.vmdk |
准备两台虚拟机,过程略
两台虚拟机的配置文件 .vmx
添加参数 disk.EnableUUID = "TRUE"
:解决scsi_id不显示虚拟磁盘的uuid的问题
通过CMD命令,在VMware程序所在的目录,创建4块共享磁盘
vmware-vdiskmanager.exe -c -s 1g -a lsilogic -t 2 W:\VMware\DSC\dcr_disk1.vmdk
vmware-vdiskmanager.exe -c -s 1g -a lsilogic -t 2 W:\VMware\DSC\vote_disk1.vmdk
vmware-vdiskmanager.exe -c -s 10g -a lsilogic -t 2 W:\VMware\DSC\dmdata_disk1.vmdk
vmware-vdiskmanager.exe -c -s 10g -a lsilogic -t 2 W:\VMware\DSC\dmlog_disk1.vmdk
关闭2个虚拟机,并把后缀为 .vmx
用记事本打开,添加以下内容
disk.locking = "FALSE"
diskLib.dataCacheMaxSize = "0"
diskLib.dataCacheMaxReadAheadSize = "0"
diskLib.dataCacheMinReadAheadSize = "0"
diskLib.maxUnsyncedWrites = "0"
scsi1.present = "TRUE"
scsi1.virtualDev = "lsilogic"
scsil.sharedBus = "VIRTUAL"
scsi1:0.present = "TRUE"
scsi1:0.mode = "independent-persistent"
scsi1:0.fileName = "W:\VMware\DSC\dcr_disk1.vmdk"
scsi1:0.deviceType = "disk"
scsi1:0.redo = ""
scsi1:1.present = "TRUE"
scsi1:1.mode = "independent-persistent"
scsi1:1.fileName = "W:\VMware\DSC\vote_disk1.vmdk"
scsi1:1.deviceType = "disk"
scsi1:1.redo = ""
scsi1:2.present = "TRUE"
scsi1:2.mode = "independent-persistent"
scsi1:2.fileName = "W:\VMware\DSC\dmdata_disk1.vmdk"
scsi1:2.deviceType = "disk"
scsi1:2.redo = ""
scsi1:3.present = "TRUE"
scsi1:3.mode = "independent-persistent"
scsi1:3.fileName = "W:\VMware\DSC\dmlog_disk1.vmdk"
scsi1:3.deviceType = "disk"
scsi1:3.redo = ""
配置完成后如下所示
这一步需要在root用户下操作
修改节点一主机名(节点二修改为dsc2)
hostnamectl set-hostname dsc1
关闭防火墙和selinux
systemctl disable firewalld --now
sed -i 's/^SELINUX=.*$/SELINUX=disabled/g' /etc/selinux/config
修改用户限制文件
echo "
dmdba soft data unlimited
dmdba hard data unlimited
dmdba soft core unlimited
dmdba hard core unlimited
dmdba soft nofile 65536
dmdba hard nofile 65536
dmdba soft nproc 65536
dmdba hard nproc 65536
dmdba soft stack 65536
dmdba hard stack 65536" >> /etc/security/limits.conf
echo "
DefaultTaskMax=infinity
DefaultLimitNOFILE=65535
DefaultLimitNPROC=infinity
DefaultLimitMEMLOCK=infinity
DefaultLimitCORE=infinity" >> /etc/systemd/system.conf
注意
重启服务器使参数生效如果暂时不能重启,需要登录到dmdba用户下临时调整参数
ulimit -n 65536
,不然安装DM软件时会报错
创建用户和属组
groupadd dinstall
useradd -g dinstall -m -d /home/dmdba -s /bin/bash dmdba
echo Dameng123 | passwd --stdin dmdba
创建目录和更改属组
mkdir -p /opt/dmdbms
mkdir -p /dmdata
chown -R dmdba:dinstall /opt/dmdbms /dmdata
上传安装包至目录
/soft
下
解压缩并挂载
unzip /soft/dm8_20241227_x86_rh7_64.zip -d /soft/dm8
mount -o loop /soft/dm8/dm8_20241227_x86_rh7_64.iso /mnt
这一步需要在dmdba用户下操作
cd /mnt
./DMInstall.bin -i
相关输出日志
[dmdba@dm8 mnt]$ ./DMInstall.bin -i
安装语言:
[1]: 简体中文
[2]: English
请选择安装语言 [1]:1
解压安装程序.........
硬件架构校验通过!
欢迎使用达梦数据库安装程序
是否输入Key文件路径? (Y/y:是 N/n:否) [Y/y]:n
是否设置时区? (Y/y:是 N/n:否) [Y/y]:y
设置时区:
[ 1]: (GTM-12:00) 日界线西
[ 2]: (GTM-11:00) 萨摩亚群岛
[ 3]: (GTM-10:00) 夏威夷
[ 4]: (GTM-09:00) 阿拉斯加
......
[20]: (GTM+07:00) 曼谷,河内
[21]: (GTM+08:00) 中国标准时间
[22]: (GTM+09:00) 首尔
[23]: (GTM+10:00) 关岛
[24]: (GTM+11:00) 所罗门群岛
[25]: (GTM+12:00) 斐济
[26]: (GTM+13:00) 努库阿勒法
[27]: (GTM+14:00) 基里巴斯
请选择时区 [21]:21
安装类型:
1 典型安装
2 服务器
3 客户端
4 自定义
请选择安装类型的数字序号 [1 典型安装]:1
所需空间: 1995M
请选择安装目录 [/home/dmdba/dmdbms]:/opt/dmdbms
可用空间: 50G
是否确认安装路径(/opt/dmdbms)? (Y/y:是 N/n:否) [Y/y]:y
安装前小结
安装位置: /opt/dmdbms
所需空间: 1995M
可用空间: 50G
版本信息:
有效日期:
安装类型: 典型安装
是否确认安装? (Y/y:是 N/n:否):y
2025-02-20 18:21:19
[INFO] 安装达梦数据库...
2025-02-20 18:21:19
[INFO] 安装 基础 模块...
2025-02-20 18:21:30
[INFO] 安装 服务器 模块...
2025-02-20 18:21:34
[INFO] 安装 客户端 模块...
2025-02-20 18:21:44
[INFO] 安装 驱动 模块...
2025-02-20 18:21:48
[INFO] 安装 手册 模块...
2025-02-20 18:21:49
[INFO] 安装 服务 模块...
2025-02-20 18:21:51
[INFO] 移动日志文件。
2025-02-20 18:21:51
[INFO] 安装达梦数据库完成。
请以root系统用户执行命令:
/opt/dmdbms/script/root/root_installer.sh
安装结束
注意
安装目录默认是/home/dmdba/dmdbms
,需要修改自己定义的目录,此处为/opt/dmdbms
,安装完成后需要在root用户下执行脚本,会创建DmAPService
服务并启动。
执行脚本
这一步需要在root用户下操作
/opt/dmdbms/script/root/root_installer.sh
这一步需要在root用户下操作,两个节点都需要执行
创建磁盘链接目录
mkdir -p /dev_dmdsc
创建存放配置文件的目录
mkdir -p /dmdata/config
创建本地归档目录
mkdir /dmarch
更改属组
chown -R dmdba:dinstall /dev_dmdsc /dmarch /dmdata
注意:有两种共享磁盘绑定方法,一种是UDEV的方式,另一种是多路径方式。此处使用UDEV的方式绑定磁盘,操作较为方便、简单。
这一步需要在root用户下操作,两个节点都需要执行
lsblk
for i in `cat /proc/partitions | awk '{print $4}' |grep sd | grep [b-z]$`; do echo "### $i: `/usr/lib/udev/scsi_id -g -u -d /dev/$i`"; done
创建规则文件
vim /etc/udev/rules.d/66-dmdevices.rules
KERNEL=="sd*",SUBSYSTEM=="block", PROGRAM=="/usr/lib/udev/scsi_id --whitelisted --replace-whitespace --device=/dev/$name",RESULT=="36000c295b6e32d2d2503b90c4f5f46a6", SYMLINK+="DCR",OWNER="dmdba", GROUP="dinstall",MODE="0660",RUN+="/bin/sh -c 'chown dmdba:dinstall /dev/$name;ln -s /dev/DCR /dev_dmdsc/DCR'"
KERNEL=="sd*",SUBSYSTEM=="block", PROGRAM=="/usr/lib/udev/scsi_id --whitelisted --replace-whitespace --device=/dev/$name",RESULT=="36000c294219a4064311879e303478364", SYMLINK+="VOTE",OWNER="dmdba", GROUP="dinstall",MODE="0660",RUN+="/bin/sh -c 'chown dmdba:dinstall /dev/$name;ln -s /dev/VOTE /dev_dmdsc/VOTE'"
KERNEL=="sd*",SUBSYSTEM=="block", PROGRAM=="/usr/lib/udev/scsi_id --whitelisted --replace-whitespace --device=/dev/$name",RESULT=="36000c292af269473a66ccc1d6fab8785", SYMLINK+="DMDATA",OWNER="dmdba", GROUP="dinstall",MODE="0660",RUN+="/bin/sh -c 'chown dmdba:dinstall /dev/$name;ln -s /dev/DMDATA /dev_dmdsc/DMDATA'"
KERNEL=="sd*",SUBSYSTEM=="block", PROGRAM=="/usr/lib/udev/scsi_id --whitelisted --replace-whitespace --device=/dev/$name",RESULT=="36000c29f415e51c1aed676980394b073", SYMLINK+="DMLOG",OWNER="dmdba", GROUP="dinstall",MODE="0660",RUN+="/bin/sh -c 'chown dmdba:dinstall /dev/$name;ln -s /dev/DMLOG /dev_dmdsc/DMLOG'"
注意
从配置信息可以看出,通过 scsi_id 找到磁盘后,在 /dev 下命名了磁盘信息,然后再做软链接到 /dev_dmdsc 下。软链接的目录可以是 /dev 下的独立目录,在 /dev下新建目录,重启服务器后会消失;也可以是其他自行创建的独立目录,目录路径必须以/dev
开始,否则DM不会认为这是使用物理磁盘的真实环境。
之所以要软链接到独立目录,是因为 DMDSC 启动时会扫描目录下所有磁盘,如果目录中存在与当前 DMDSC 系统无关的磁盘,则 DMDSC 将启动失败。因此需要软链接到独立目录,保证该目录下仅包含当前 DMDSC 系统使用的共享存储磁盘,避免 DMDSC 启动失败。
重启服务
systemctl restart systemd-udev-trigger
ls -lth /dev_dmdsc
通过blockdev --getsize64 /dev_dmdsc/*
检查裸设备是否挂载成功,能够正常反馈各个裸设备空间大小即为成功。
这一步需要在dmdba用户下操作,在节点一上执行即可
dmdcr_cfg.ini
是用于格式化 DCR 和 Voting Disk 的配置文件。vim /dmdata/config/dmdcr_cfg.ini
DCR_N_GRP = 3 #集群环境有多少个GROUP,范围:1~16
DCR_VTD_PATH = /dev_dmdsc/VOTE #vote
DCR_OGUID = 63635
[GRP]
DCR_GRP_TYPE = CSS #组类型(CSS/ASM/DB)
DCR_GRP_NAME = GRP_CSS #组名
DCR_GRP_N_EP = 2 #组内节点个数
DCR_GRP_DSKCHK_CNT = 60 #磁盘心跳容错时间,单位:秒
[GRP_CSS]
DCR_EP_NAME = CSS1 #CSS节点名
DCR_EP_HOST = 10.10.10.1 #心跳地址
DCR_EP_PORT = 11286 #CSS端口
[GRP_CSS]
DCR_EP_NAME = CSS2
DCR_EP_HOST = 10.10.10.2
DCR_EP_PORT = 11287
[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 = ASM1 #ASM节点名,和dmasvrmal的MAL_INST_NAME一致
DCR_EP_SHM_KEY = 64735 #共享内存标识
DCR_EP_SHM_SIZE = 1024 #共享内存大小
DCR_EP_HOST = 10.10.10.1 #心跳地址
DCR_EP_PORT = 11276 #ASM端口
DCR_EP_ASM_LOAD_PATH = /dev_dmdsc
[GRP_ASM]
DCR_EP_NAME = ASM2
DCR_EP_SHM_KEY = 64736
DCR_EP_SHM_SIZE = 1024
DCR_EP_HOST = 10.10.10.2
DCR_EP_PORT = 11277
DCR_EP_ASM_LOAD_PATH = /dev_dmdsc
[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 = DSC1 #实例名,和dm.ini的INSTANCE_NAME一致
DCR_EP_SEQNO = 0 #组内序号,不能重复
DCR_EP_PORT = 5236 #实例端口,和dm.ini的PORT_NUM一致
DCR_CHECK_PORT = 11266 #DCR检查端口
[GRP_DSC]
DCR_EP_NAME = DSC2
DCR_EP_SEQNO = 1
DCR_EP_PORT = 5236
DCR_CHECK_PORT = 11267
信息
- 在用 dmasmcmd 工具执行 init votedisk disk_path from dcr_cfg_path时,指定的 disk_path 必须和 dcr_cfg_path 里面配置的 DCR_VTD_PATH 相同。
- 如果配置 dmcssm,dmcssm 的 OGUID 必须和 DCR_OGUID 保持一致。
- DCR_N_GRP 必须和实际配置的组数目保持一致。
- CSS 和 ASM 组的 DCR_GRP_N_EP 要相等,DB 的 DCR_GRP_N_EP 要小于等于CSS/ASM 的 DCR_GRP_N_EP。
- ASM节点的DCR_EP_NAME必须和DMASM系统使用的dmasvrmal.ini配置文件里的 MAL_INST_NAME 保持一致。
- DB 节点的 DCR_EP_NAME 必须和数据库实例使用 dmmal.ini 配置文件里的MAL_INST_NAME、以及 dm.ini 配置文件里的 INSTANCE_NAME 保持一致。
- 所有DB节点的DCR_EP_NAME都不能重复,DB组内的DCR_EP_SEQNO不能重复。
- dmdcr_cfg.ini 配置文件中的所有路径均不支持中文路径。
这一步需要在dmdba用户下操作,在节点一上执行即可
cd /opt/dmdbms/bin
./dmasmcmd
create dcrdisk '/dev_dmdsc/DCR' 'DCR'
create votedisk '/dev_dmdsc/VOTE' 'VOTE'
create asmdisk '/dev_dmdsc/DMDATA' 'DMDATA'
create asmdisk '/dev_dmdsc/DMLOG' 'DMLOG'
init dcrdisk '/dev_dmdsc/DCR' from '/dmdata/config/dmdcr_cfg.ini' identified by 'Dameng123'
init votedisk '/dev_dmdsc/VOTE' from '/dmdata/config/dmdcr_cfg.ini'
信息
DMASMCMD 是 DMASM 文件系统初始化工具,用来格式化裸设备为 DMASM 磁盘,并初始化 DCR Disk、 Voting Disk。格式化 DMASM 磁盘就是在裸设备的头部写入 DMASM 磁盘特征描述符号,包括 DMASM 标识串、 DMASM 磁盘名、 以及 DMASM 磁盘大小等信息。若修改了配置dmdcr_cfg.ini则需要重新初始化磁盘组,否则报错“无效的ASM磁盘”。
补充说明
当一个磁盘组要部署2块磁盘时,此处也需要新创建磁盘信息。例如:有两块磁盘部署在DMDATA磁盘组中,第二块create asmdisk '/dev_dmdsc/DMDATA2' 'DMDATA2'
即可。
这一步需要在dmdba用户下操作,两个节点都需要执行,配置文件相同
创建dmasvrmal.ini配置文件
vim /dmdata/config/dmasvrmal.ini
[MAL_INST1]
MAL_INST_NAME = ASM1
MAL_HOST = 10.10.10.1
MAL_PORT = 11256
[MAL_INST2]
MAL_INST_NAME = ASM2
MAL_HOST = 10.10.10.2
MAL_PORT = 11257
信息
DMASMSVR 是提供 DMASM 服务的主要载体,每个提供 DMASM 服务的节点都必须启动一个 DMASMSVR 服务器,这些 DMASMSVR 一起组成共享文件集群系统,提供共享文件的全局并发控制。dmasvrmal.ini 用于配置节点之间 DMASMSVR 服务的通信。
这一步需要在dmdba用户下操作,两个节点都需要执行,配置文件不同
vim /dmdata/config/dmdcr.ini
节点一
DMDCR_PATH = /dev_dmdsc/DCR #dcr
DMDCR_MAL_PATH =/dmdata/config/dmasvrmal.ini #dmasmsvr 使用的 MAL 配置文件路径
DMDCR_SEQNO = 0
# ASM 重启参数,命令行方式启动
DMDCR_ASM_RESTART_INTERVAL = 30
# 初次搭建环境时,取消该参数,需要手动运行ASM服务,后面搭建无误后,在使该参数生效
# DMDCR_ASM_STARTUP_CMD = /opt/dmdbms/bin/dmasmsvr dcr_ini=/dmdata/config/dmdcr.ini
# DB 重启参数,命令行方式启动
DMDCR_DB_RESTART_INTERVAL = 60
# 初次搭建环境时,取消该参数,需要手动运行DB服务,后面搭建无误后,在使该参数生效
# DMDCR_DB_STARTUP_CMD = /opt/dmdbms/bin/dmserver path=/dmdata/dsc1_config/dm.ini dcr_ini=/dmdata/config/dmdcr.ini
DMDCR_AUTO_OPEN_CHECK = 60
DMDCR_ASM_TRACE_LEVEL = 2
节点二
DMDCR_PATH = /dev_dmdsc/DCR
DMDCR_MAL_PATH =/dmdata/config/dmasvrmal.ini
DMDCR_SEQNO = 1
# ASM 重启参数,命令行方式启动
DMDCR_ASM_RESTART_INTERVAL = 30
# 初次搭建环境时,取消该参数,需要手动运行ASM服务,后面搭建无误后,在使该参数生效
# DMDCR_ASM_STARTUP_CMD = /opt/dmdbms/bin/dmasmsvr dcr_ini=/dmdata/config/dmdcr.ini
# DB 重启参数,命令行方式启动
DMDCR_DB_RESTART_INTERVAL = 60
# 初次搭建环境时,取消该参数,需要手动运行DB服务,后面搭建无误后,在使该参数生效
# DMDCR_DB_STARTUP_CMD = /opt/dmdbms/bin/dmserver path=/dmdata/dsc2_config/dm.ini dcr_ini=/dmdata/config/dmdcr.ini
DMDCR_AUTO_OPEN_CHECK = 60
DMDCR_ASM_TRACE_LEVEL = 2
信息
dmdcr.ini 是 dmcss、dmasmsvr、dmasmtool 等工具的输入参数。记录了当前节点序列号以及 DCR 磁盘路径。 DMASM 的两个节点分别配置 dmdcr.ini,dmdcr_path 相同,dmasvrmal.ini 文件内容也相同,dmdcr_seqno 分别为 0 和 1。
这一步需要在dmdba用户下操作,两个节点都需要执行,并且服务处于运行状态才可以进行下一步操作
第一步
两个节点先启动DMCSS服务:
cd /opt/dmdbms/bin
./dmcss DCR_INI=/dmdata/config/dmdcr.ini
第二步,另开一个窗口
两个节点再启动DMASM服务:
cd /opt/dmdbms/bin
./dmasmsvr DCR_INI=/dmdata/config/dmdcr.ini
注意
始终保持两个节点的DMCSS和DMASM服务处于运行状态。直到后面执行停止服务的命令为止。执行其他的操作都需要另开窗口执行。
如果运行报错需要根据报错处理问题再进行下一步。
这一步需要在dmdba用户下操作,在节点一执行即可
cd /opt/dmdbms/bin
./dmasmtool DCR_INI=/dmdata/config/dmdcr.ini
create diskgroup 'DMLOG' asmdisk '/dev_dmdsc/DMLOG' #创建日志磁盘组
create diskgroup 'DMDATA' asmdisk '/dev_dmdsc/DMDATA' #创建数据磁盘组
补充说明
如果有2块磁盘部署在一个组里,需要将另一块磁盘添加进来。例如:alter diskgroup 'DMDATA' add asmdisk '/dev_dmdsc/DMDATA2'
这一步需要在dmdba用户下操作,在节点一执行即可
vim /dmdata/config/dminit.ini
db_name = DSC
system_path = +DMDATA/data
system = +DMDATA/data/dsc/system.dbf
system_size = 128
main = +DMDATA/data/dsc/main.dbf
main_size = 128
roll = +DMDATA/data/dsc/roll.dbf
roll_size = 128
ctl_path = +DMDATA/data/dsc/dm.ctl
ctl_size = 8
log_size = 2048
dcr_path = /dev_dmdsc/DCR
dcr_seqno = 0
auto_overwrite = 1
PAGE_SIZE = 32
EXTENT_SIZE = 32
CASE_SENSITIVE = 0
BLANK_PAD_MODE = 1
CHARSET = 1
[DSC1]
config_path = /dmdata/dsc1_config
port_num = 5236
mal_host = 10.10.10.1
mal_port = 11246
log_path = +DMLOG/log/dsc1_log01.log
log_path = +DMLOG/log/dsc1_log02.log
[DSC2]
config_path = /dmdata/dsc2_config
port_num = 5236
mal_host = 10.10.10.2
mal_port = 11247
log_path = +DMLOG/log/dsc2_log01.log
log_path = +DMLOG/log/dsc2_log02.log
cd /opt/dmdbms/bin
./dminit control=/dmdata/config/dminit.ini SYSDBA_PWD=Dameng123 SYSAUDITOR_PWD=Dameng123
scp -r /dmdata/dsc2_config/ 192.168.2.52:/dmdata/
分别修改节点一和节点二上的 dm.ini
文件
节点一(节点二)
vim /dmdata/dsc1_config/dm.ini(vim /dmdata/dsc2_config/dm.ini)
ARCH_INI = 1
这一步需要在dmdba用户下操作,两个节点都需要执行,配置文件不同
双重本地归档,最大化保证归档连续性,ASM 正常情况下,本地归档永远是连续的,所以将本地归档一份留在本地,一份放在 ASM 中。
节点一
vim /dmdata/dsc1_config/dmarch.ini
ARCH_WAIT_APPLY = 0
ARCH_LOCAL_SHARE = 1
ARCH_LOCAL_SHARE_CHECK=0
[ARCHIVE_LOCAL1]
ARCH_TYPE = LOCAL
ARCH_DEST = +DMDATA/ARCH/DSC1/arch
ARCH_FILE_SIZE = 2048
ARCH_SPACE_LIMIT = 204800
ARCH_FLUSH_BUF_SIZE = 32
[ARCHIVE_REMOTE1]
ARCH_TYPE = REMOTE
ARCH_DEST = DSC2
ARCH_INCOMING_PATH = +DMDATA/ARCH/DSC2/arch
ARCH_FILE_SIZE = 2048
ARCH_SPACE_LIMIT = 204800
ARCH_FLUSH_BUF_SIZE = 32
[ARCHIVE_LOCAL2]
ARCH_TYPE = LOCAL
ARCH_DEST = /dmarch
ARCH_FILE_SIZE = 2048
ARCH_SPACE_LIMIT = 409600
ARCH_FLUSH_BUF_SIZE = 32
节点二
vim /dmdata/dsc2_config/dmarch.ini
ARCH_WAIT_APPLY = 0
ARCH_LOCAL_SHARE = 1
ARCH_LOCAL_SHARE_CHECK=0
[ARCHIVE_LOCAL1]
ARCH_TYPE = LOCAL
ARCH_DEST = +DMDATA/ARCH/DSC2/arch
ARCH_FILE_SIZE = 2048
ARCH_SPACE_LIMIT = 204800
ARCH_FLUSH_BUF_SIZE = 32
[ARCHIVE_REMOTE1]
ARCH_TYPE = REMOTE
ARCH_DEST = DSC1
ARCH_INCOMING_PATH = +DMDATA/ARCH/DSC1/arch
ARCH_FILE_SIZE = 2048
ARCH_SPACE_LIMIT = 204800
ARCH_FLUSH_BUF_SIZE = 32
[ARCHIVE_LOCAL2]
ARCH_TYPE = LOCAL
ARCH_DEST = /dmarch
ARCH_FILE_SIZE = 2048
ARCH_SPACE_LIMIT = 409600
ARCH_FLUSH_BUF_SIZE = 32
这一步需要在dmdba用户下操作,两个节点都需要执行
cd /opt/dmdbms/bin
节点一
./dmserver /dmdata/dsc1_config/dm.ini dcr_ini=/dmdata/config/dmdcr.ini
节点二
./dmserver /dmdata/dsc2_config/dm.ini dcr_ini=/dmdata/config/dmdcr.ini
这一步需要在dmdba用户下操作,在节点一操作即可。也可以在第三台服务上配置
创建监视器可以观察集群的整体运行状况
vim /dmdata/config/cssm.ini
CSSM_OGUID = 63635
CSSM_CSS_IP = 10.10.10.1:11286
CSSM_CSS_IP = 10.10.10.2:11287
CSSM_LOG_PATH = /dmdata/log
CSSM_LOG_FILE_SIZE = 1024
CSSM_LOG_SPACE_LIMIT = 0
这一步需要在dmdba用户下操作,在节点一操作即可
cd /opt/dmdbms/bin
./dmcssm ini_path=/dmdata/config/cssm.ini
在监视器界面执行
查看集群状态
show
停止DB服务
ep stop GRP_DSC
停止ASM服务
ep stop GRP_ASM
停 DMCSS 进程
在集群两个节点之前打开的 ./dmcss DCR_INI=/dmdata/config/dmdcr.ini
的窗口中 exit 回车即可退出前台启动的整个集群
注意
监视器本身就需要依赖CSS服务,所以不可以再监视器中停止CSS服务。
注意
需要所有节点把文件/dmdata/config/dmdcr.ini
注销的关于ASM和DB的参数全部生效。
这一步需要在root用户下操作,两个节点都需要执行
cd /opt/dmdbms/script/root/
节点一执行
./dm_service_installer.sh -t dmcss -dcr_ini /dmdata/config/dmdcr.ini -p CSS1
节点二执行
./dm_service_installer.sh -t dmcss -dcr_ini /dmdata/config/dmdcr.ini -p CSS2
节点一执行
./dm_service_installer.sh -t dmasmsvr -dcr_ini /dmdata/config/dmdcr.ini -y DmCSSServiceCSS1.service -p ASM1
节点二执行
./dm_service_installer.sh -t dmasmsvr -dcr_ini /dmdata/config/dmdcr.ini -y DmCSSServiceCSS2.service -p ASM2
节点一执行
./dm_service_installer.sh -t dmserver -dm_ini /dmdata/dsc1_config/dm.ini -dcr_ini /dmdata/config/dmdcr.ini -y DmASMSvrServiceASM1.service -p DSC1
节点二执行
./dm_service_installer.sh -t dmserver -dm_ini /dmdata/dsc2_config/dm.ini -dcr_ini /dmdata/config/dmdcr.ini -y DmASMSvrServiceASM2.service -p DSC2
注意
/dmdata/config/cssm.ini
文件部署在哪里,就在哪个服务器上创建服务。此处在节点一执行即可。
./dm_service_installer.sh -t dmcssm -cssm_ini /dmdata/config/cssm.ini -p CSSM
CSS-ASM-DSC
这一步需要在root用户下操作,两个节点都需要执行
启动节点一和节点二的CSS服务:
systemctl start DmCSSServiceCSS1
systemctl start DmCSSServiceCSS2
信息
集群启动一般情况下只需要启动两端节点 CSS 服务即可,service DmCSSServiceCSS start,其会自动拉起 ASM 服务和 DSC 服务。
DSC-ASM-CSS
这一步需要在dmdba用户下操作,在节点一进入dmcssm监视器并在监视器界面执行
停止数据库实例
ep stop grp_dsc
停止ASM服务
ep stop grp_asm
停止CSS服务
这一步需要在root用户下操作,两个节点都需要执行
节点一
systemctl stop DmCSSServiceCSS1
节点二
systemctl stop DmCSSServiceCSS2
这一步需要在第三台DM数据库服务器上,在root用户下操作
vim /etc/dm_svc.conf
TIME_ZONE=(480)
LANGUAGE=(cn)
DSC=(192.168.2.51:5236,192.168.2.52:5236)
[DSC]
CLUSTER=(DSC)
SWITCH_TIMES=(20)
SWTICH_INTERVAL=(2000)
LOGIN_DSC_CTRL=(1)
LOGIN_ENCRYPT=(0)
这一步需要在第三台DM数据库服务器上,在dmdba用户下操作
disql sysdba/Dameng123@DSC
select name from v$instance;
用户当前连接到节点一上 DSC1 实例。不要退出这个会话。
关闭 DSC1 实例,或者将节点1所在的这台主机关机。
等待几秒后,还在刚刚的会话中再次执行这条语句,服务器会返回提示已切换当前连接。
select name from v$instance;
文章
阅读量
获赞