注册
两节点DMDSC部署
技术分享/ 文章详情 /

两节点DMDSC部署

,,, 2025/12/31 122 0 0

DMDSC部署

前置文章:搭建dmdsc共享磁盘环境

搭建完共享磁盘环境后,我们可以正式开始dmdsc的部署了

本文所使用的设备和系统

虚拟机软件:VMWare WorkStation 16

系统:CentOS7 CentOS7

两台虚拟机的ip地址分别为:192.168.221.130 和 192.168.221.133

后文分别称之为130机器和133机器

部署的具体内容:双两节点DMDSC

搭建的配置文件分别存放于

130 机器的/home/dmdba/dmdbms/data/DSC01

和 133 机器的/home/dmdba/dmdmdbs/data/DSC02 下。

准备DMDCR_CFG.INI

130机器

DCR_N_GRP= 3 DCR_VTD_PATH=/dev_DSC2/VOTE DCR_OGUID= 1071107589 [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.102.107 DCR_EP_PORT = 9836 [GRP_CSS] DCR_EP_NAME = CSS1 DCR_EP_HOST = 192.168.102.110 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.102.107 DCR_EP_PORT= 5836 DCR_EP_ASM_LOAD_PATH= /dev_DSC2 [GRP_ASM] DCR_EP_NAME= ASM1 DCR_EP_SHM_KEY= 54736 DCR_EP_SHM_SIZE= 512 DCR_EP_HOST= 192.168.102.110 DCR_EP_PORT= 5837 DCR_EP_ASM_LOAD_PATH= /dev_DSC2 [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

使用 DMASMCMD初始化磁盘。

130机器

dmasmcmd工具位于DM安装目录下的bin目录中

./dmasmcmd

create dcrdisk '/dev_DSC2/DCR' 'DCR'
create votedisk '/dev_DSC2/VOTE' 'VOTE'
create asmdisk '/dev_DSC2/DMDATA' 'DMDATA'
create asmdisk '/dev_DSC2/DMLOG'  'DMLOG'
init dcrdisk '/dev_DSC2/DCR' from '/home/dmdba/dmdbms/data/DSC01/dmdcr_cfg.ini' identified by 'DCRpsd_123'
init votedisk  '/dev_DSC2/VOTE' from '/home/dmdba/dmdbms/data/DSC01/dmdcr_cfg.ini'

准备DMASVRMAL.INI

130机器

[MAL_INST1] MAL_INST_NAME= ASM0 MAL_HOST= 192.168.221.130 MAL_PORT= 4836 [MAL_INST2] MAL_INST_NAME= ASM1 MAL_HOST= 192.168.221.133 MAL_PORT= 4837

133机器

完全相同的配置

准备 DMDCR.INI

130机器

DMDCR_PATH = /dev_DSC2/DCR DMDCR_MAL_PATH = /home/dmdba/dmdbms/data/DSC01/dmasvrmal.ini DMDCR_SEQNO = 0 DMDCR_ASM_RESTART_INTERVAL = 0 DMDCR_ASM_STARTUP_CMD = /home/dmdba/dmdbms/bin/dmasmsvr dcr_ini=/home/dmdba/dmdbms/data/DSC01/dmdcr.ini DMDCR_DB_RESTART_INTERVAL = 0 DMDCR_DB_STARTUP_CMD = /home/dmdba/dmdbms/bin/dmserver path=/home/dmdba/dmdbms/data/DSC01/DSC01_conf/dm.ini dcr_ini=/home/dmdba/dmdbms/data/DSC01/dmdcr.ini DMDCR_LINK_CHECK_IP=192.168.3.84

DMDCR_LINK_CHECK_IP填写一个两台虚拟机可以访问到的ip,这里填写主机的ip

133机器

DMDCR_PATH = /dev_DSC2/DCR DMDCR_MAL_PATH = /home/dmdba/dmdbms/data/DSC02/dmasvrmal.ini DMDCR_SEQNO = 1 DMDCR_ASM_RESTART_INTERVAL = 0 DMDCR_ASM_STARTUP_CMD = /home/dmdba/dmdbms/bin/dmasmsvr dcr_ini=/home/dmdba/dmdbms/data/DSC02/dmdcr.ini DMDCR_DB_RESTART_INTERVAL = 0 DMDCR_DB_STARTUP_CMD = /home/dmdba/dmdbms/bin/dmserver path=/home/dmdba/dmdbms/data/DSC02/DSC02_conf/dm.ini dcr_ini=/home/dmdba/dmdbms/data/DSC02/dmdcr.ini DMDCR_LINK_CHECK_IP=192.168.3.84

L两台机器都需要为几个工具开放ping权限

sudo setcap cap_net_raw,cap_net_admin=eip /home/dmdba/dmdsc/bin/dmserver sudo setcap cap_net_raw,cap_net_admin=eip /home/dmdba/dmdsc/bin/dmasmsvr sudo setcap cap_net_raw,cap_net_admin=eip /home/dmdba/dmdsc/bin/dmcss

启动 DMCSS、DMASM

主节点 130 启动 DMCSS:

./dmcss dcr_ini=/home/dmdba/dmdsc/data/DSC01/dmdcr.ini

另一节点 133 启动 DMCSS:

./dmcss dcr_ini=/home/dmdba/dmdsc/data/DSC02/dmdcr.ini

主节点 130 启动 DMASMSVR:

./dmasmsvr dcr_ini=/home/dmdba/dmdsc/data/DSC01/dmdcr.ini

另一节点 133 启动 DMASMSVR:

./dmasmsvr dcr_ini=/home/dmdba/dmdsc/data/DSC02/dmdcr.ini

创建 ASM磁盘组

130机器

./dmasmtool dcr_ini=/home/dmdba/dmdsc/data/DSC01/dmdcr.ini

#创建DATA磁盘组
CREATE DISKGROUP DMDATA asmdisk '/dev_DSC2/DMDATA'
#创建LOG磁盘组
CREATE DISKGROUP DMLOG  asmdisk '/dev_DSC2/DMLOG'

准备DMINIT.INI

130机器

DB_NAME= dsc2 SYSTEM_PATH= +DMDATA/data SYSTEM= +DMDATA/data/dsc2/system.dbf SYSTEM_SIZE= 128 ROLL= +DMDATA/data/dsc2/roll.dbf ROLL_SIZE= 128 MAIN= +DMDATA/data/dsc2/main.dbf MAIN_SIZE= 128 CTL_PATH= +DMDATA/data/dsc2/dm.ctl LOG_SIZE= 2048 DCR_PATH= /dev_DSC2/DCR DCR_SEQNO= 0 AUTO_OVERWRITE= 2 PAGE_SIZE = 16 EXTENT_SIZE = 16 SYSDBA_PWD=DMdba_123 SYSAUDITOR_PWD=DMauditor_123 [DSC01] CONFIG_PATH= /home/dmdba/dmdsc/data/DSC01/DSC01_conf PORT_NUM = 6636 MAL_HOST= 192.168.102.107 MAL_PORT= 6536 LOG_PATH= +DMLOG/log/DSC01_log1.log LOG_PATH= +DMLOG/log/DSC01_log2.log [DSC02] CONFIG_PATH= /home/dmdba/dmdsc/data/DSC02/DSC02_conf PORT_NUM = 6637 MAL_HOST= 192.168.102.110 MAL_PORT= 6537 LOG_PATH= +DMLOG/log/DSC02_log1.log LOG_PATH= +DMLOG/log/DSC02_log2.log

初始化数据库环境

130机器

使用dminit工具初始化

./dminit control=/home/dmdba/dmdsc/data/DSC01/dminit.ini

133机器

拷贝130机器中dsc2文件中的内容,下面内容在130机器执行,也可以使用ftp软件

scp -r /home/dmdba/dmdbms/data/DSC02/* dmdba@192.168.221.133:/home/dmdba/dmdbms/data/DSC02/

启动数据库实例

# 107节点服务器启动: cd /home/dmdba/dmdbms/bin ./dmserver dcr_ini=/home/dmdba/dmdbms/data/DSC01/dmdcr.ini /home/dmdba/dmdbms/data/DSC01/DSC01_conf/dm.ini # 110节点服务器启动: cd /home/dmdba/dmdbms/bin ./dmserver dcr_ini=/home/dmdba/dmdbms/data/DSC02/dmdcr.ini /home/dmdba/dmdbms/data/DSC02/DSC02_conf/dm.ini

配置并启动DMCSSM监视器

#和DMDCR_CFG.INI中的DCR_OGUID保持一致 CSSM_OGUID = 1071107589 #配置所有CSS的连接信息, #与DMDCR_CFG.INI中CSS配置项的DCR_EP_HOST和DCR_EP_PORT保持一致 CSSM_CSS_IP = 192.168.221.130:9836 CSSM_CSS_IP = 192.168.221.133:9837 CSSM_LOG_PATH = /home/dmdba/dmdbms/data/cssm_log #监视器日志文件存放路径 CSSM_LOG_FILE_SIZE = 32 #每个日志文件最大32M CSSM_LOG_SPACE_LIMIT = 0 #不限定日志文件总占用空间

创建日志存放文件并启动

 mkdir /home/dmdba/dmdbms/data/cssm_log
  ./dmcssm ini_path=/home/dmdba/dmdbms/data/dmcssm.ini

启动后使用show命令查看集群信息,出现类似以下信息则说明部署成功了

show

monitor current time:2025-12-30 16:52:12, n_group:3
=================== group[name = GRP_CSS, seq = 0, type = CSS, Control Node = 0] ========================================

[CSS1] auto check = TRUE, global info:
[ASM1] auto restart = FALSE
[DSC1] auto restart = FALSE
[CSS2] auto check = TRUE, global info:
[ASM2] auto restart = FALSE
[DSC2] auto restart = FALSE


连接到dmdsc集群

配置dm_svc.conf,该文件存放位置在不同平台略有不同,

  1. 32 位的 DM 安装在 Win32 操作平台下,此文件位于 %SystemRoot%\system32 目录;
  2. 64 位的 DM 安装在 Win64 操作平台下,此文件位于 %SystemRoot%\system32 目录;
  3. 32 位的 DM 安装在 Win64 操作平台下,此文件位于 %SystemRoot%\SysWOW64 目录;
  4. 在 Linux 平台下,此文件位于/etc 目录。

在配置文件中添加

DMDSC1=(192.168.221.130:6536,192.168.221.133:6537)

这里的端口对应上文中的DMINIT.ini中的PORT_NUM。
然后连接时使用服务名DMDSC1进行连接即可

DIsql SYSDBA/DMdba_123@DMDSC1

查看具体连接到了哪个实例

SQL> select name from v$instance; 行号 NAME ---------- ------- ------- 1 DSC1
评论
后发表回复

作者

文章

阅读量

获赞

扫一扫
联系客服