赞
踩
目录
2节点均安装DM8(暂时不用初始化实例),版本安装路径都一致;
使用虚拟机工具vmware-vdiskmanager.exe创建2、3、6、8、7、4G的共享磁盘,在本机中使用cmd创建;
#注意修改每次创建的磁盘大小
"D:\Program Files (x86)\VMware\VMware Workstation\vmware-vdiskmanager.exe" -c -s 2GB -a lsilogic -t 2 "E:\virtualMachines\DSC\DSC_share\DCSshare-2G.vmdk"
2节点虚拟机外添加6块SCSI硬盘作为共享磁盘sdb、sdc、sdd、sde、sdf、sdg。设置为独立、永久模式。将虚拟机文件DSC03.vmx和DSC04.vmx用记事本打开,添加以下内容:
scsi1.sharedBus = "virtual"
scsi1:1.deviceType = "disk"
scsi1:2.deviceType = "disk"
scsi1:3.deviceType = "disk"
scsi1:4.deviceType = "disk"
scsi1:5.deviceType = "disk"
scsi1:6.deviceType = "disk"disk.locking = "false"
diskLib.dataCacheMaxSize = "0"
diskLib.dataCacheMaxReadAheadSize = "0"
diskLib.DataCacheMinReadAheadSize = "0"
diskLib.dataCachePageSize = "4096"
diskLib.maxUnsyncedWrites = "0"
disk.EnableUUID = "TRUE"
输入lsblk可查看添加的磁盘信息;
[root@dsc03 ~]# for i in b c d e f g;
> do
> echo "sd$i" "`/lib/udev/scsi_id --whitelisted --replace-whitespace --device=/dev/sd$i` ";
> done
查询结果:
sdb 36000c29a203a09470c50582584bce950
sdc 36000c29b7540464ce39f5d542701e670
sdd 36000c29ad7300ce10583dfe7b9037a01
sde 36000c29c39068bdcfe4e8fdd2b609c26
sdf 36000c29c966d92fa6831f2f4495d20fd
sdg 36000c292a355dd9a5830201a327c4c99
vi /etc/udev/rules.d/66-dm-asmdevices.rules
添加以下内容:
KERNEL=="sd?",SUBSYSTEM=="block",PROGRAM=="/usr/lib/udev/scsi_id --whitelisted --replace-whitespace --device=/dev/$name",RESULT=="36000c29a203a09470c50582584bce950",SYMLINK+="dm_dcr",OWNER="dmdba",GROUP="dinstall",MODE="0660"
KERNEL=="sd?",SUBSYSTEM=="block",PROGRAM=="/usr/lib/udev/scsi_id --whitelisted --replace-whitespace --device=/dev/$name",RESULT=="36000c29b7540464ce39f5d542701e670",SYMLINK+="dm_vote",OWNER="dmdba",GROUP="dinstall",MODE="0660"
KERNEL=="sd?",SUBSYSTEM=="block",PROGRAM=="/usr/lib/udev/scsi_id --whitelisted --replace-whitespace --device=/dev/$name",RESULT=="36000c29ad7300ce10583dfe7b9037a01",SYMLINK+="dm_redo",OWNER="dmdba",GROUP="dinstall",MODE="0660"
KERNEL=="sd?",SUBSYSTEM=="block",PROGRAM=="/usr/lib/udev/scsi_id --whitelisted --replace-whitespace --device=/dev/$name",RESULT=="36000c29c39068bdcfe4e8fdd2b609c26",SYMLINK+="dm_data0",OWNER="dmdba",GROUP="dinstall",MODE="0660"
KERNEL=="sd?",SUBSYSTEM=="block",PROGRAM=="/usr/lib/udev/scsi_id --whitelisted --replace-whitespace --device=/dev/$name",RESULT=="36000c29c966d92fa6831f2f4495d20fd",SYMLINK+="dm_data1",OWNER="dmdba",GROUP="dinstall",MODE="0660"
KERNEL=="sd?",SUBSYSTEM=="block",PROGRAM=="/usr/lib/udev/scsi_id --whitelisted --replace-whitespace --device=/dev/$name",RESULT=="36000c292a355dd9a5830201a327c4c99",SYMLINK+="dm_archive",OWNER="dmdba",GROUP="dinstall",MODE="0660"
执行命令使其生效:
udevadm control --reload-rules
systemctl restart systemd-udev-trigger.service
检查磁盘分区是否绑定成功:
blockdev --getsize64 /dev/dm_dcr
blockdev --getsize64 /dev/dm_vote
blockdev --getsize64 /dev/dm_redo
blockdev --getsize64 /dev/dm_data0
blockdev --getsize64 /dev/dm_data1
blockdev --getsize64 /dev/dm_archive
或者:
ll /dev/dm_*
上传配置脚本到第一节点,并解压缩,修改所属用户为dmdba;
[dmdba@dsc03 dm8_dsc_dw]$ pwd
/home/dmdba/dm8_dsc_dw
[dmdba@dsc03 dm8_dsc_dw]$ vi dm8_dsc.conf
修改文件内容:(提前把文件内容涉及到的目录创建好)
#配置文件
[GLOBAL]
DM_HOME = /home/dmdba/dmdbms/bin #根据实际修改
DB_PATH = /home/dmdba/dmdbms/dsc_config #DSC 节点的目录,里面存放控制文件、配置文件等
TEMP_PATH = /home/dmdba/dmdbms/temp #DSC 临时表空间目录,里面存放节点的临时表空间。
ARCH_PATH = /dmarch/CNDT #DSC 节点的本地归档、远程归档路径,只有ARCH_INI_OPEN=1时生效。
BAK_PATH = /dmbak/CNDT #DSC 节点数据库备份的默认路径
DCR_ASM_PATH = /dev/dm_dcr #操作系统绑定的dcr路径
VOTE_ASM_PATH = /dev/dm_vote #操作系统绑定的vote路径
LOG_ASM_PATH = /dev/dm_redo #操作系统绑定的redo日志路径,对应磁盘组DMLOG
DATA_ASM_PATH = /dev/dm_data0,/dev/dm_data1 #操作系统绑定的数据库数据文件路径,对应磁盘组DMDATA
ARCH_ASM_PATH = /dev/dm_archive #操作系统绑定的本地归档存储路径,只有ARCH_INI_OPEN=2/3时生效,其对应的磁盘组DMARCH,如值与DATA_ASM_PATH完全一致,归档将存储在磁盘组DMDATA上。
[ARCH]
ARCH_INI_OPEN = 2 #是否开启DSC节点的本地归档,0不开启,1开启本地归档且放在本地,2开启本地归档且放在ASM,3:DSC+备机,并且dsc归档放在asm上。
ARCH_SPACE_LIMIT = 10240 #单个节点的本地归档或远程归档的大小空间限制,如是4节点DSC,则需要预留4*ARCH_SPACE_LIMIT的空间。
SSH_PORT = 22 #远程Linux服务器的ssh端口号,一般为22,某些客户出于安全考虑,会更改ssh的默认连接端口
[DSC_DMINIT] #初始化DSC实例的一些参数
DB_NAME = CNDT #实例名称
SYS_PATH = data #在ASM存储中的数据文件路径,注意大小写
SYSTEM_SIZE = 1024 #SYSTEM.dbf的大小
ROLL_SIZE = 10000 #Roll表空间的大小
MAIN_SIZE = 1024 #MAIN表空间的大小
CTL_SIZE = 8 #dm.ctl文件的大小
LOG_SIZE = 2048 #redo文件的大小,搭建集群完成后,通过17步骤扩大集群的redo文件到log_size大小。
AUTO_OVERWRITE = 1 #ASM中的同名文件是否覆盖
PAGE_SIZE = 16 #初始化实例时的页大小
EXTENT_SIZE = 16 #初始化实例时的簇大小
DB_SYSDBA_PWD = SYSDBA_PWD #初始化数据库时的SYSDBA密码,包括后续修改SYSDBA密码后的一些运维操作
DB_INIT_PARA = CASE_SENSITIVE=1,UNICODE_FLAG=0 #其它初始化参数,需要什么参数按格式增加即可,多个参数以逗号隔开
[DSC_CONF]
DCR_OGUID = 220914 #DCR的oguid,取6位数字即可,常用规律为当前日期
[DSC_PORT] #搭建集群时所用到的各个端口号
DB_INST_PORT = 31236 #DSC实例端口号
DB_MAL_PORT = 31246 #DSC实例的MAL通信端口号
DCR_CHECK_PORT = 31256 #DCR 检查端口号。检查实例是否活动的时候用,各实例不能冲突,故该端口会随着实例自动+1
ASM_MAL_PORT = 31266 #ASM 通信的端口号
ASM_DCR_EP_PORT = 31276 #ASM 节点 TCP 监听端口。各实例不能冲突,故该端口会随着实例自动+1
CSS_DCR_EP_PORT = 31286 #CSS 节点 TCP 监听端口
[DSC_TIME] #DSC集群一些心跳故障认证时间
DB_DCR_GRP_DSKCHK_CNT = 57 #心跳,DSC DB 故障认定时间
ASM_DCR_GRP_DSKCHK_CNT = 61 #心跳,DSC ASM 故障认定时间
CSS_DCR_GRP_DSKCHK_CNT = 65 #心跳,DSC CSS 故障认定时间
DMDCR_ASM_RESTART_INTERVAL = 71 #DMCSS 认定 DMASM 节点故障重启的时间间隔(取值 0~86400s),0则不会执行拉起
DMDCR_DB_RESTART_INTERVAL = 0 #DMCSS 认定 DMDSC 节点故障重启的时间间隔(取值 0~86400s),0则不会执行拉起
DMDCR_AUTO_OPEN_CHECK = 111 #指定时间内如果节点实例未启动,DMCSS 会自动将节点踢出集群环境,单位为秒
MAL_CHECK_INTERVAL = 87 #MAL 链路检测时间间隔,取值范围(0s-1800s)为了防止误判,DMDSC 集群中,建议将配置值>= DB_DCR_GRP_DSKCHK_CNT。
MAL_CONN_FAIL_INTERVAL = 33 #判定 MAL 链路断开的时间,取值范围(2s-1800s)
[ASM]
DCR_EP_SHM_KEY = 42424 #共享内存标识,不同实例的该值不一样,故该端口会随着实例自动+1
DCR_EP_SHM_SIZE = 200 #共享内存大小
[DataWatcher] #该组参数只有在ARCH_INI_OPEN=3时生效,表示搭建DSC+单机备机
DATA_PATH = /mppdata/dsc_dw #备机数据库数据文件路径,根据实际修改,但要确保该目录只为该集群所用。
MAL_DW_PORT = 52141 #dmmal.ini中的MAL_DW_PORT端口,用于集群中所有守护进程、监视器的通信。
MAL_INST_DW_PORT = 5276 #DM8的参数,数据守护4.0
DB_OGUID = 191212 #建议修改#OGUID,代表集群的唯一标识,表示数据库的OGUID
DW_TYPE = REALTIME #搭建的集群类型:即时归档:TIMELY;实时归档:REALTIME,如无特殊需求,建议用REALTIME
DW_MODE = MANUAL #集群的故障切换模式:自动切换(AUTO),非自动切换(MANUAL)
ASYNC_NODE = 1 #异步备机的数量,取值0-8。始终从最后的NODE为异步备机,如只有2NODE,则表示1主1异步备机。
AUTO_RESTART = 1 #实例自动重启,1表示自动重启,0表示不自动重启,仅针对备机有效,对DSC无效
INST_RECOVER_TIME = 60 #主库守护进程启动恢复的间隔时间
INST_ERROR_TIME = 120 #本地数据库故障认定时间
DW_ERROR_TIME = 120 #远程主(备)机守护进程故障认定时间
ARCH_WAIT_APPLY = 0 #高性能模式为0,事务强一致模式为1
ARCH_FLUSH_BUF_SIZE = 0 #写本地归档时,合并rlog为多少M再写。202009月度版才支持,之前版本该值需要设置为0.
[MAIL]#一般不用改参数,以128GB内存为例
MAL_SYS_BUF_SIZE=6000
MAL_BUF_SIZE=3000
MAL_VPOOL_SIZE=5000
MAL_COMPRESS_LEVEL=0
#各节点配置
[DSC1]
DSC_MAL_HOST = 192.168.50.13 #内网IP
DSC_INST_HOST = 192.168.186.13 #外网IP
DSC_INST_UID = dmdba
DSC_INST_PWD = LBHA888
[DSC2]
DSC_MAL_HOST = 192.168.50.14
DSC_INST_HOST = 192.168.186.14
DSC_INST_UID = dmdba
DSC_INST_PWD = LBHA888
[dmdba@dsc03 dm8_dsc_dw]$ python dm8_dsc.py
请输入配置文件:
dm8_dsc.conf
部署集群:2节点DSC环境,本地归档存储在ASM。
DM8_DSC>
在节点DSC03创建表test,并插入数据,提交;
SQL> create table test(id number ,testname varchar2(12));
SQL> insert into test values(01,'dmdsc');
SQL> commit;
在节点DSC04可以查询到表test数据;
SQL> select * from test;
此时DSC集群搭建成功!!
以上是本次分享内容,欢迎留言沟通一起学习!更多内容也可以前往达梦社区了解~
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。