DMDSC共享集群搭建

1 部署规划

DMSC规划
节点1节点2
业务IP192.168.61.142192.168.61.141
心跳IP192.168.61.144192.168.61.145
安装目录/dm8/dsc/dmdbms/dm8/dsc/dmdbms
配置文件目录/dm8/dsc/config/dm8/dsc/config
归档日志目录/dm8/dsc/arch_1/dm8/dsc/arch_2
远程归档目录/dm8/dsc/remote_arch_1/dm8/dsc/remote_arch_2
备份目录/dm8/dsc/bak/dm8/dsc/bak
监视器日志/dm8/dsc/mon_log
监视器配置在节点2
监视器文件/dm8/dsc/dmdbms/dmcssm.ini

2 安装数据库

2.1 创建安装用户组

        在root用户下创建,安装用户组及安装用户。

#创建用户组dinstall 
groupadd dinstall

#创建安装用户
useradd -g dinstall -m -d /home/dmdba -s /bin/bash dmdba

#修改用户密码
passwd dmdba

        如下图所示:

2.1 创建安装目录并授权 

#创建安装目录
mkdir /dm8
mkdir /dm8/dsc
mkdir /dm8/dsc/dmdbms

#更改用户组并授权
chown -R dmdba:dinstall /dm8/
chmod -R 755 /dm8/

2.2 修改文件最大打开数

#用vi编辑文件
vi /etc/security/limits.config

#修改用户资源限制
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

2.3 挂载文件并安装数据库

#root用户下将文件挂载到mnt目录
mount -o loop /opt/dm8.iso /mnt

#安装数据库,切换dmdba用户到切换到mnt目录
su - dmdba

cd /mnt

./DMInstall.bin -i 

2.4 修改主机名

        修改节点1主机名:

#root用户下
hostname dmdsc01

#修改内容
vi /etc/sysconfig/network 
  
  NETWORKING=yes
  HOSTNAME=dmdsc01
#修改内容
vi /etc/hostname
dmdsc01

        修改节点2主机名:

#root用户下
hostname dmdsc02

#修改内容
vi /etc/sysconfig/network 
  
  NETWORKING=yes
  HOSTNAME=dmdsc02
#修改内容
vi /etc/hostname
dmdsc02

2.5 关闭防火墙

#在root用户下依次执行如下命令,关闭节点1和2的防火墙
systemctl stop firewalld
systemctl disable firewalld
#查看防火墙状态
systemctl status firewalld

 2.6 设置网卡自启动

#在root用户下执行如下语句
vi /etc/sysconfig/network-scripts/ifcfg-ens33

ONBOOT=yes

3 配置共享存储 

3.1 分配共享存储

        1)在一台虚拟机预先分配20G共享硬盘内存。另一台添加磁盘时,选择现有磁盘。

        

         2)启动两台虚拟机

                删除目录下lck后缀的文件;

                在vmx文件中添加disk.locking="false";

        3)查看共享存储fdisk -l

     

3.2 划存储

3.2.1 空间规划

用途空间规划
sdb1用于存放dcr信息1G
sdb2用于存放vote信息1G
sdb3用于存放redo信息8G
sdb4用于存放data剩下的全部空间

 3.2.2 进行共享磁盘划分

#在root用户下
fdisk /dev/sdb

1) 依次输入  n  p  1  回车  +1024M,完成第一块磁盘划分
2) 依次输入  n  p  2  回车  +1024M,完成第二块磁盘划分
3) 依次输入  n  p  3  回车  +8192M,完成第三块磁盘划分
4) 依次输入  n  p  回车  回车  回车,完成第四块磁盘划分
5) 输入w命令,将裸设备划分的设置进行保存

 3.2.3 挂载存储

#节点1和节点二在root用户下进行如下修改
vi /etc/udev/rules.d/70-persistent-ipoib.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="dmdba", GROUP="dinstall", MODE="660"

partprobe /dev/sdb
reboot

        查看是否挂载成功,结果如下图所示:

4 配置DSC文件

4.1 配置dmdcr_cfg.ini

         在dmdba安装用户下进行配置。

vi /dm8/dsc/config/dmdcr_cfg.ini

#配置dmdcr_cfg.ini
  DCR_GRP_NAME             = GRP_CSS  #组名
  DCR_GRP_N_EP             = 2  #组内节点个数
  DCR_GRP_DSKCHK_CNT       = 60  #磁盘心跳容错时间,单位:秒
[GRP_CSS]
  DCR_EP_NAME              = CSS0  #CSS节点名
  DCR_EP_HOST              = 192.168.61.144  #心跳地址
  DCR_EP_PORT              = 5336  #CSS端口
[GRP_CSS]
  DCR_EP_NAME              = CSS1
  DCR_EP_HOST              = 192.168.61.145
  DCR_EP_PORT              = 5337

[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  #ASM节点名,和dmasvrmal的MAL_INST_NAME一致
  DCR_EP_SHM_KEY   = 93360  #共享内存标识
  DCR_EP_SHM_SIZE   = 10  #共享内存大小
  DCR_EP_HOST      = 192.168.61.144  #心跳地址
  DCR_EP_PORT       = 5436  #ASM端口
  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.61.145
  DCR_EP_PORT              = 5437
  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    = DSC0  #实例名,和dm.ini的INSTANCE_NAME一致
  DCR_EP_SEQNO   = 0  #组内序号,不能重复
  DCR_EP_PORT    = 5236  #实例端口,和dm.ini的PORT_NUM一致
  DCR_CHECK_PORT   = 5536  #DCR检查端口
[GRP_DSC]
  DCR_EP_NAME              = DSC1
  DCR_EP_SEQNO             = 1
  DCR_EP_PORT              = 5236
  DCR_CHECK_PORT           = 5537

4.2 初始化ASM磁盘

#在dmdba用户下执行
/dm8/dsc/dmdbms/bin/dmasmcmd

ASM> create dcrdisk '/dev/raw/raw1' 'dcr'
ASM> create votedisk '/dev/raw/raw2' 'vote'
ASM> create asmdisk '/dev/raw/raw3' 'LOG0'
ASM> create asmdisk '/dev/raw/raw4' 'DATA0'
ASM> init dcrdisk '/dev/raw/raw1' from '/dm8/dsc/config/dmdcr_cfg.ini' identified by 'admin1234'
ASM> init votedisk '/dev/raw/raw2' from '/dm8/dsc/config/dmdcr_cfg.ini'

         如下图所示:

4.3 配置dmasvrmal.ini

#创建dmasvrmal.ini
vi /dm8/dsc/config/dmasvrmal.ini

[MAL_INST1]
  MAL_INST_NAME            = ASM0
  MAL_HOST                 = 192.168.61.144  #心跳地址
  MAL_PORT                 = 5636  #MAL监听端口
[MAL_INST2]
  MAL_INST_NAME            = ASM1
  MAL_HOST                 = 192.168.61.145
  MAL_PORT                 = 5637 

4.4 配置dmdcr.ini

        节点1的配置文件如下: 

DMDCR_PATH                 = /dev/raw/raw1
DMDCR_MAL_PATH             = /dm8/dsc/config/dmasvrmal.ini
DMDCR_SEQNO                = 0
DMDCR_AUTO_OPEN_CHECK      = 90

#DMDCR_ASM_RESTART_INTERVAL = 30  #CSS认定ASM故障重启的时间
#DMDCR_ASM_STARTUP_CMD      = /dm8/dsc/dmdbms/bin/dmasmsvr dcr_ini=/dm8/dsc/config/dmdcr.ini

#DMDCR_DB_RESTART_INTERVAL  = 60  #CSS认定DSC故障重启的时间
#DMDCR_DB_STARTUP_CMD       = /dm8/dsc/dmdbms/bin/dmserver path=/dm8/dsc/config/dsc0_config/dm.ini dcr_ini=/dm8/dsc/config/dmdcr.ini

        节点2的配置文件如下:

DMDCR_PATH                 = /dev/raw/raw1
DMDCR_MAL_PATH             = /dm8/dsc/config/dmasvrmal.ini
DMDCR_SEQNO                = 1
DMDCR_AUTO_OPEN_CHECK      = 90

#DMDCR_ASM_RESTART_INTERVAL = 30
#DMDCR_ASM_STARTUP_CMD      = /dm8/dsc/dmdbms/bin/dmasmsvr dcr_ini=/dm8/dsc/config/dmdcr.ini

#DMDCR_DB_RESTART_INTERVAL  = 60
#DMDCR_DB_STARTUP_CMD       = /dm8/dsc/dmdbms/bin/dmserver path=/dm8/dsc/config/dsc1_config/dm.ini dcr_ini=/dm8/dsc/config/dmdcr.ini

        注意:当前为手动拉起A机器和B机器的ASM和DMSERVER服务。待集群配置完成后,再修改为自动拉起(删除dmdcr.ini中红色井号)。 

4.5 启动CSS、ASM服务

       1、 节点1和节点2依次启动dmcss:

/dm8/dsc/dmdbms/bin/dmcss DCR_INI=/dm8/dsc/config/dmdcr.ini

        2、节点1和节点2依次启动dmasmsvr:

/dm8/dsc/dmdbms/bin/dmasmsvr DCR_INI=/dm8/dsc/config/dmdcr.ini

 

 

4.6 创建DMASM磁盘

        节点1:

  /dm8/dsc/dmdbms/bin/dmasmtool DCR_INI=/dm8/dsc/config/dmdcr.ini
  
  ASM> create diskgroup 'DMLOG' asmdisk '/dev/raw/raw3'
  ASM> create diskgroup 'DMDATA' asmdisk '/dev/raw/raw4'

4.7 创建dminit.ini

vi /dm8/dsc/config/dminit.ini
  db_name                  = dsc
  system_path              = +DMDATA/data
  main                     = +DMDATA/data/dsc/main.dbf
  main_size                = 128
  roll                     = +DMDATA/data/dsc/roll.dbf
  roll_size                = 128
  system                   = +DMDATA/data/dsc/system.dbf
  system_size              = 128
  ctl_path                 = +DMDATA/data/dsc/dm.ctl
  ctl_size                 = 8
  log_size                 = 2048
  dcr_path                 = /dev/raw/raw1
  dcr_seqno                = 0
  auto_overwrite           = 1
  PAGE_SIZE                = 32
  CASE_SENSITIVE           = Y
  CHARSET                  = 0

[DSC0]
  config_path              = /dm8/dsc/config/dsc0_config
  port_num                 = 5236
  mal_host                 = 192.168.61.144
  mal_port                 = 5736
  log_path                 = +DMLOG/log/dsc0_log01.log
  log_path                 = +DMLOG/log/dsc0_log02.log 
[DSC1]
  config_path              = /opt/dsc/config/dsc1_config
  port_num                 = 5236
  mal_host                 = 192.168.61.145
  mal_port                 = 5737
  log_path                 = +DMLOG/log/dsc1_log01.log
  log_path                 = +DMLOG/log/dsc1_log02.log

4.8 初始化实例

--初始化实例
/dm8/dsc/dmdbms/bin/dminit control=/dm8/dsc/config/dminit.ini

#复制到节点2
scp -r /opt/dsc/config/dsc1_config dmdba@192.168.61.145:/opt/dsc/config/

 4.9 创建dmarch.ini

        节点1:

--修改dm.ini
vi /dm8/dsc/config/dsc0_config/dm.ini
  ARCH_INI                 = 1

--创建dmarch.ini
vi /dm8/dsc/config/dsc0_config/dmarch.ini
[ARCHIVE_LOCAL]
  ARCH_TYPE                = LOCAL
  ARCH_DEST                = /dm8/dsc/arch_1
  ARCH_FILE_SIZE           = 1024
  ARCH_SPACE_LIMIT         = 51200
[ARCHIVE_REMOTE]
  ARCH_TYPE                = REMOTE
  ARCH_DEST                = DSC1
  ARCH_INCOMING_PATH       = /dm8/dsc/remote_arch_1
  ARCH_FILE_SIZE           = 1024
  ARCH_SPACE_LIMIT         = 51200

        节点2:

--修改dm.ini
vi /dm8/dsc/config/dsc1_config/dm.ini
  ARCH_INI                 = 1

--创建dmarch.ini
vi /dm8/dsc/config/dsc1_config/dmarch.ini
[ARCHIVE_LOCAL]
  ARCH_TYPE                = LOCAL
  ARCH_DEST                = /dm8/dsc/arch_2
  ARCH_FILE_SIZE           = 1024
  ARCH_SPACE_LIMIT         = 51200
[ARCHIVE_REMOTE]
  ARCH_TYPE                = REMOTE
  ARCH_DEST                = DSC0
  ARCH_INCOMING_PATH       = /dm8/dsc/remote_arch_2
  ARCH_FILE_SIZE           = 1024
  ARCH_SPACE_LIMIT         = 51200

 4.10 启动DMSERVER

节点1:
/dm8/dsc/dmdbms/bin/dmserver /dm8/dsc/config/dsc0_config/dm.ini dcr_ini=/dm8/dsc/config/dmdcr.ini

节点2:
/dm8/dsc/dmdbms/bin/dmserver /dm8/dsc/config/dsc1_config/dm.ini dcr_ini=/dm8/dsc/config/dmdcr.ini

        节点1:

         节点2:

 

4.11 注册CSS、ASM、DMSERVER后台服务

节点1:
/dm8/dsc/dmdbms/script/root/dm_service_installer.sh -t dmcss -dcr_ini /dm8/dsc/config/dmdcr.ini -p CSS

/dm8/dsc/dmdbms/script/root/dm_service_installer.sh -t dmasmsvr -dcr_ini /dm8/dsc/config/dmdcr.ini -y DmCSSServiceCSS.service -p ASM

/dm8/dsc/dmdbms/script/root/dm_service_installer.sh -t dmserver -dm_ini /dm8/dsc/config/dsc0_config/dm.ini -dcr_ini /dm8/dsc/config/dmdcr.ini -y DmASMSvrServiceASM.service -p DSC

节点2:
/dm8/dsc/dmdbms/script/root/dm_service_installer.sh -t dmcss -dcr_ini /dm8/dsc/config/dmdcr.ini -p CSS

/dm8/dsc/dmdbms/script/root/dm_service_installer.sh -t dmasmsvr -dcr_ini /dm8/dsc/config/dmdcr.ini -y DmCSSServiceCSS.service -p ASM

/dm8/dsc/dmdbms/script/root/dm_service_installer.sh -t dmserver -dm_ini /dm8/dsc/config/dsc1_config/dm.ini -dcr_ini /dm8/dsc/config/dmdcr.ini -y DmASMSvrServiceASM.service -p DSC

        节点1:

         节点2:

 

5 配置监视器及启动DSC集群

5.1 创建dmcssm.ini

        节点1和节点2相同:

vi /dm8/dsc/dmdbms/bin/dmcssm.ini
CSSM_OGUID                 = 45331
CSSM_CSS_IP                = 192.168.61.144:5336
CSSM_CSS_IP                = 192.168.61.145:5337
CSSM_LOG_PATH              = ../log
CSSM_LOG_FILE_SIZE         = 512
CSSM_LOG_SPACE_LIMIT       = 2048

5.2 注册服务

/dm8/dsc/dmdbms/script/root/dm_service_installer.sh -t dmcssm -cssm_ini /dm8/dsc/dmdbms/bin/dmcssm.ini -p Monitor

5.3 启动监视器

--前台启动:
/dm8/dsc/dmdbms/bin/dmcssm INI_PATH=/dm8/dsc/dmdbms/bin/dmcssm.ini
--后台启动:
/dm8/dsc/dmdbms/bin/DmCSSMonitorServiceMonitor start

        说明:CSS启动后30秒自动拉起ASM,60秒自动拉起DMSERVER。 

5.4 启动集群

启动节点1和节点2的CSS
/dm8/dsc/dmdbms/bin/DmCSSServiceCSS start

停止节点1和节点2:
/dm8/dsc/dmdbms/bin/DmServiceDSC stop
/dm8/dsc/dmdbms/bin/DmASMSvrServiceASM stop
/dm8/dsc/dmdbms/bin/DmCSSServiceCSS stop

     说明:

  1. DSC正常停库必须2节点同时停止,根据目前脚本配置,CSS启动后30秒自动拉起ASM,60秒自动拉起DMSERVER,所以停止DMSERVER和ASM后,要尽快停止CSS,避免被自动拉起。
  2. ASM服务在任意节点停止,2个节点的ASM服务都会停止,为了保险起见,可以两边都执行停止命令。
  3. 服务全部停止后,要检查后台进程是否全部停止。

详细的DSC搭建信息,请到达梦官方技术查看:达梦数据库 - 新一代大型通用关系型数据库 | 达梦在线服务平台

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值