DMDSC部署实践

目录

1 环境准备

1.1 安装DM8

1.2 准备共享存储硬盘

2 配置DSC 

2.1 划分共享磁盘上的裸设备(在dsc01节点上即可)

2.2 配置文件及初始化DCR

3 启动DSC集群

3.1 启动DMCSS、DMASM服务程序

3.2 创建DMASM磁盘组

4 初始化库

4.1 配置dminit.ini文件(在dsc01节点上配置即可)

4.2 使用 dminit 初始化 DB 环境

5 启动数据库服务器

5.1 前台式

5.2 服务式


1 环境准备

1.1 安装DM8

2节点均安装DM8(暂时不用初始化实例);

1.2 准备共享存储硬盘

(1)方法一:虚拟机中创建

节点1关机后操作如图:

节点2关机后操作如图:

前面操作和节点1一样,选择磁盘的时候选择使用现有的磁盘

(2)方法二:通过cmd创建

使用虚拟机工具vmware-vdiskmanager.exe创建20G的共享磁盘,在本机中使用cmd;

"D:\Program Files (x86)\VMware\VMware Workstation\vmware-vdiskmanager.exe" -c -s 20GB -a lsilogic -t 2 "E:\virtualMachines\DSC_share\DCS-share-20G.vmdk"

 后续步骤类似方法一的02节点,使用现有磁盘;

(3)2节点准备好磁盘后,进入各自的虚拟机目录,将虚拟机文件以记事本打开,在文件里添加内容(这里只放01的图,02同理): disk.locking="false"

(4)在root用户下使用fdisk -l命令可查看共享磁盘;

2 配置DSC 

2.1 划分共享磁盘上的裸设备(在dsc01节点上即可)

(1)输入fdisk /dev/sdb命令;

(2)依次输入:(输入m查看帮助)
        n→p→1→回车→+100M→回车
        n→p→2→回车→+100M→回车
        n→p→3→回车→+2048M→回车
        n→p→回车→回车(默认将剩余空间给分区4)
        w→回车 (保存信息)

(3)lsblk查看分区情况;

  

(4)2节点绑定裸设备;

[root@dsc01 ~]# vim /etc/udev/rules.d/70-raw.rules
[root@dsc02 ~]# vim /etc/udev/rules.d/70-raw.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"

分别执行以下命令完成裸设备绑定;

[root@dsc01 ~]# partprobe /dev/sdb
[root@dsc01 ~]# udevadm control --reload-rules
[root@dsc01 ~]# udevadm trigger --type=devices --action=change

[root@dsc02 ~]# partprobe /dev/sdb
[root@dsc02 ~]# udevadm control --reload-rules
[root@dsc02 ~]# udevadm trigger --type=devices --action=change

(5)查看裸设备;

[root@dsc01 ~]# ll /dev/raw/*
[root@dsc01 ~]# blockdev --getsize64 /dev/raw/raw1[1/2/3/4]

[root@dsc02 ~]# ll /dev/raw/*
[root@dsc02 ~]# blockdev --getsize64 /dev/raw/raw1[1/2/3/4]

2.2 配置文件及初始化DCR

(1)配置dmdcr_cfg.ini文件(两节点内容一致)

[dmdba@dsc01 ~]$ vim /home/dmdba/dmdbms/data/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.50.144
DCR_EP_PORT = 9341
[GRP_CSS]
DCR_EP_NAME = CSS1
DCR_EP_HOST = 192.168.50.145
DCR_EP_PORT = 9343
[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 = 93360
DCR_EP_SHM_SIZE = 10
DCR_EP_HOST = 192.168.50.144
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.50.145
DCR_EP_PORT = 9351
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
DCR_EP_SEQNO = 0
DCR_CHECK_PORT = 9741
DCR_EP_PORT = 5238
[GRP_DSC]
DCR_EP_NAME = DSC1
DCR_EP_SEQNO = 1
DCR_CHECK_PORT = 9742
DCR_EP_PORT = 5238

保存后将 dmdcr_cfg.ini 发一份到dsc02节点上;

[dmdba@dsc01 data]$ scp dmdcr_cfg.ini dmdba@192.168.50.145:/home/dmdba/dmdbms/data

(2)在机器dsc01上使用DMASMCMD工具初始化

 在bin目录下执行:

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 '/home/dmdba/dmdbms/data/dmdcr_cfg.ini' identified by '123'

ASM>init votedisk '/dev/raw/raw2' from '/home/dmdba/dmdbms/data/dmdcr_cfg.ini'

(3)配置dmasvrmal.ini文件(两节点内容一致)

[dmdba@dsc01 ~]$ vim /home/dmdba/dmdbms/data/dmasvrmal.ini

 添加内容:

[MAL_INST1]
MAL_INST_NAME     = ASM0
MAL_HOST          = 192.168.50.144
MAL_PORT          = 7236
[MAL_INST2]
MAL_INST_NAME     = ASM1
MAL_HOST          = 192.168.50.145
MAL_PORT          = 7237

保存后将 dmasvrmal.ini 发一份到dsc02节点上;

[dmdba@dsc01 data]$ scp dmasvrmal.ini dmdba@192.168.50.145:/home/dmdba/dmdbms/data

 (4)配置dmdcr.ini文件

在dmdba用户下的/home/dmdba/dmdbms/data目录下配置dmdcr.ini,其中dmdcr_path相同,dmasvrmal.ini文件内容也相同,dmdcr_seqno分别为0和1;

【dsc01节点】

[dmdba@dsc01 ~]$ vim /home/dmdba/dmdbms/data/dmdcr.ini

 添加以下内容:

DMDCR_PATH = /dev/raw/raw1
DMDCR_MAL_PATH =/home/dmdba/dmdbms/data/dmasvrmal.ini 
 
#dmasmsvr 使用的 MAL 配置文件路径
DMDCR_SEQNO = 0
 
#ASM 重启参数,命令行方式启动
DMDCR_ASM_RESTART_INTERVAL = 0
DMDCR_ASM_STARTUP_CMD = /home/dmdba/dmdbms/bin/dmasmsvr 		dcr_ini=/home/dmdba/dmdbms/data/dmdcr.ini
 
#DB 重启参数,命令行方式启动
DMDCR_DB_RESTART_INTERVAL = 0
DMDCR_DB_STARTUP_CMD = /home/dmdba/dmdbms/bin/dmserver 		path=/home/dmdba/dmdbms/data/dsc0_config/dm.ini 		dcr_ini=/home/dmdba/dmdbms/data/dmdcr.ini

【dsc02节点】

[dmdba@dsc02 ~]$ vim /home/dmdba/dmdbms/data/dmdcr.ini

 添加以下内容:

DMDCR_PATH = /dev/raw/raw1
DMDCR_MAL_PATH =/home/dmdba/dmdbms/data/dmasvrmal.ini 
 
#dmasmsvr 使用的 MAL 配置文件路径
DMDCR_SEQNO = 1
 
#ASM 重启参数,命令行方式启动
DMDCR_ASM_RESTART_INTERVAL = 0
DMDCR_ASM_STARTUP_CMD = /home/dmdba/dmdbms/bin/dmasmsvr 		dcr_ini=/home/dmdba/dmdbms/data/dmdcr.ini
 
#DB 重启参数,命令行方式启动
DMDCR_DB_RESTART_INTERVAL = 0
DMDCR_DB_STARTUP_CMD = /home/dmdba/dmdbms/bin/dmserver 		path=/home/dmdba/dmdbms/data/dsc1_config/dm.ini 		dcr_ini=/home/dmdba/dmdbms/data/dmdcr.ini

3 启动DSC集群

3.1 启动DMCSS、DMASM服务程序

两个节点分别在$DM_HOME/bin目录下先后启动dmcss、dmasm程序;

(1)启动DMCSS

[dmdba@dsc01 bin]$ ./dmcss DCR_INI=/home/dmdba/dmdbms/data/dmdcr.ini
[dmdba@dsc02 bin]$ ./dmcss DCR_INI=/home/dmdba/dmdbms/data/dmdcr.ini

 (2)启动DMASM

开新的终端执行:

[dmdba@dsc01 bin]$ ./dmasmsvr DCR_INI=/home/dmdba/dmdbms/data/dmdcr.ini
[dmdba@dsc02 bin]$ ./dmasmsvr DCR_INI=/home/dmdba/dmdbms/data/dmdcr.ini

3.2 创建DMASM磁盘组

新开一个终端,使用 dmasmtool 工具创建 DMASM 磁盘组,在dsc01节点(其中一个节点执行即可)的$DM_HOME/bin目录下执行以下命令:

[dmdba@dsc01 bin]# ./dmasmtool DCR_INI=/home/dmdba/dmdbms/data/dmdcr.ini

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

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

4 初始化库

4.1 配置dminit.ini文件(在dsc01节点上配置即可)

[dmdba@dsc01 ~]# vim /home/dmdba/dmdbms/data/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_seqno = 0
auto_overwrite = 1
page_size = 16
[DSC0]
config_path = /home/dmdba/dmdata/dsc0_config
port_num = 5241
mal_host = 192.168.50.144
mal_port = 9340
log_path = +DMLOG/log/dsc0_log01.log
log_path = +DMLOG/log/dsc0_log02.log
[DSC1]
config_path = /home/dmdba/dmdata/dsc1_config
port_num = 5241
mal_host = 192.168.50.145
mal_port = 9341
log_path = +DMLOG/log/dsc1_log01.log
log_path = +DMLOG/log/dsc1_log02.log

4.2 使用 dminit 初始化 DB 环境

(1)启动dminit工具初始化数据库;

[dmdba@dsc01 bin]$ ./dminit control=/home/dmdba/dmdbms/data/dminit.ini

(2)dminit执行完成后,会生成两个配置文件,分别为dsc0_config和dsc1_config,里面有dm.ini和dmmal.ini文件;

(3)将属于dsc02节点的dsc1_config里的文件发送到dsc02节点上;

[dmdba@dsc01 dmdata]$ scp -r dsc1_config/ dmdba@192.168.50.145:/home/dmdba/dmdata

5 启动数据库服务器

5.1 前台式

(1)分别进入$DM_HOME/bin目录下启动dsc01和dsc02:

[dmdba@dsc01 bin]# ./dmserver /home/dmdba/dmdata/dsc0_config/dm.ini dcr_ini=/home/dmdba/dmdbms/data/dmdcr.ini
[dmdba@dsc02 bin]# ./dmserver /home/dmdba/dmdata/dsc1_config/dm.ini dcr_ini=/home/dmdba/dmdbms/data/dmdcr.ini

(2)观察 css 窗口日志,db 会被自动启动,出现 system is ready、ep real open,说明数据库实例启动成功;

(3)dsc01 CSS窗口show命令查看sys_status 字段为 OPEN,vtd_status 字段为 WORKING,active 字段为 TRUE 说明 db 服务正常,至此DSC数据共享集群搭建完成!!

5.2 服务式

由于前台启动比较麻烦,不仅需要通过命令行启动还需要开启多个窗口,因此可将css、asm、db实例注册服务,以服务的方式启动;

(1)2节点注册服务,到数据库安装目录的 script/root 目录使用root用户执行;

#注册CSS服务(dsc02节点同理)
[root@dsc01 root]# ./dm_service_installer.sh -t dmcss -dcr_ini /home/dmdba/dmdbms/data/dmdcr.ini -p DMCSS

#注册ASM服务(dsc02节点同理)
[root@dsc01 root]# ./dm_service_installer.sh -t dmasmsvr -dcr_ini /home/dmdba/dmdbms/data/dmdcr.ini -y DmCSSServiceDMCSS -p DMASM

#注册dmserver服务
[root@dsc01 root]# ./dm_service_installer.sh -t dmserver -dm_ini /home/dmdba/dmdata/dsc0_config/dm.ini  -dcr_ini /home/dmdba/dmdbms/data/dmdcr.ini -y DmASMSvrServiceDMASM -p DMSERVER
[root@dsc02 root]# ./dm_service_installer.sh -t dmserver -dm_ini /home/dmdba/dmdata/dsc1_config/dm.ini  -dcr_ini /home/dmdba/dmdbms/data/dmdcr.ini -y DmASMSvrServiceDMASM -p DMSERVER

 (2)启动服务;

./DmCSSServiceDMCSS start
./DmASMSvrServiceDMASM start
./DmServiceDMSERVER start

 (3)设置自动拉起功能;

2节点均修改dmdcr.ini文件参数;

[dmdba@dsc01 bin]$ vim /home/dmdba/dmdbms/data/dmdcr.ini
[dmdba@dsc02 bin]$ vim /home/dmdba/dmdbms/data/dmdcr.ini

修改以下内容: 

DMDCR_ASM_RESTART_INTERVAL = 1  #自动拉起ASM
DMDCR_DB_RESTART_INTERVAL = 1   #自动拉起数据库实例

以上是本次分享内容,欢迎留言沟通一起学习!更多内容也可以前往达梦社区了解~

达梦社区:eco.dameng.com

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值