首页 > 数据库 > 国内数据库 > VMware虚拟化平台部署DMDSC集群
V M ware平台搭建D MDSC 环境
一. 配置规划
1 .1 网络规划
|
操作系统 |
数据库实例名 |
I P 地址 |
心跳 IP 地址 |
|
RedHat 7.6 |
D MDSC1 |
1 92.168.1.21 |
10.10.1.21 |
|
RedHat 7.6 |
D MDSC2 |
1 92.168.1.22 |
1 0.10.1.22 |
1 .2 共享存储规划
|
D MASM 磁盘组 |
容量 |
后续空间不足报错,扩容后 |
|
D CR DISK |
2 g*1 |
30g*1 |
|
V OTING DISK |
2 g*1 |
30 g*1 |
|
L OG DISK |
3 g*1 |
50 g*1 |
|
D ATADISK1 |
3 g*1 |
100 g*1 |
|
D ATADISK2 |
3 g*1 |
50 g*1 |
二. 软件准备
2 .1 系统镜像:
rhel-server-7.6-x86_64-dvd.iso
2 .2 数据库软件包:
dm8_20251016_x86_rh7_64.zip
三. 硬件准备
3 .1 Windows系统配置:
| 处理器:
11th Gen Intel(R) Core(TM) i5-11500 @ 2.70GHz 2.71 GHz 机带RAM: 32.0 GB (31.7/GB 可用) 系统类型: 64位操作系经,基于×64的处理器 |
3 .2 虚拟机系统配置:
虚拟机 RedHat7 _ D MDSC1:

虚拟机 RedHat7 _ D MDSC2:

如上所示, D MDSC 1和 D MDSC 2的配置相同
3.3 配置虚拟机共享存储
3.3.1 创建虚拟共享磁盘
在Windows系统下执行cmd命令进入DOS窗口,切换到VMware虚拟机的安装路径下 , 然后执行如下所示命令创建共享磁盘
|
vmware-vdiskmanager.exe -c -s 2g -t 2 " D:\Software\VMware\Virtual Machines\Share Disk \ dcr .vmdk" vmware-vdiskmanager.exe -c -s 2g -t 2 "D:\Software\VMware\Virtual Machines\ Share Disk \vote.vmdk" vmware-vdiskmanager.exe -c -s 3g -t 2 "D:\Software\VMware\Virtual Machines\ Share Disk \log.vmdk" vmware-vdiskmanager.exe -c -s 3g -t 2 "D:\Software\VMware\Virtual Machines\ Share Disk \datadisk1.vmdk" vmware-vdiskmanager.exe -c -s 3g -t 2 "D:\Software\VMware\Virtual Machines\ Share Disk \datadisk2.vmdk" |
注意:
① 以上创建共享磁盘的路径自定义,如果路径中含有空格,则加双引号。
② 如果路径外含有空格,则会报错路径无法识别,文件创建失败,路径命名需删除非必要空格
③ 如果文件名含有空格,则会包含空格部分创建命名,对后续操作造成困扰,建议文件命名删除非必要空格
命令执行成功后在自定义的路径下会显示刚刚创建的磁盘
注意:
建议使用 vmware-vdiskmanager.exe的方式添加共享磁盘,直接在其中一台机器创建磁盘,第二台再关联的方式可能会在后面启动css时出现问题。
3.3.2 编辑虚拟机配置文件
首先关闭两台虚拟机 D MDSC 1和 D MDSC 2,然后找到 D MDSC 1和 D MDSC 2虚拟机的安装路径,
右键选择记事本打开D MDSC 1,添加如下内容:
#shared disks configure
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 = "D:\Software\VMware\Virtual Machines\Share Disk\dcr.vmdk"
scsi1:0.deviceType = "disk"
scsi1:0.redo = ""
scsi1:1.present = "TRUE"
scsi1:1.mode = "independent-persistent"
scsi1:1.fileName = "D:\Software\VMware\Virtual Machines\Share Disk\vote.vmdk"
scsi1:1.deviceType = "disk"
scsi1:1.redo = ""
scsi1:2.present = "TRUE"
scsi1:2.mode = "independent-persistent"
scsi1:2.fileName = "D:\Software\VMware\Virtual Machines\Share Disk\log.vmdk"
scsi1:2.deviceType = "disk"
scsi1:2.redo = ""
scsi1:3.present = "TRUE"
scsi1:3.mode = "independent-persistent"
scsi1:3.fileName = "D:\Software\VMware\Virtual Machines\Share Disk\datadisk1.vmdk"
scsi1:3.deviceType = "disk"
scsi1:3.redo = ""
scsi1:4.present = "TRUE"
scsi1:4.mode = "independent-persistent"
scsi1:4.fileName = "D:\Software\VMware\Virtual Machines\Share Disk\datadisk2.vmdk"
scsi1:4.deviceType = "disk"
scsi1:4.redo = ""
在 D MDSC 2安装路径下重复同样的操作,
|
参数 1: disk.locking=“ FALSE” 。 说明: 虚拟机系统在启动的时候会锁定磁盘, 所以当启动虚机 1 后共享磁盘被锁定了, 虚机 2 就起不来了,因此需要加入 disk.locking = “ false” 参数 2: scsi[n].sharedBus = “ virtual” 。 说明: 以上的设置表示所有的 BUS 都共享, vmare 推荐这种做法。 如果说是不是所有的 bus 都共享的话, 可以 将 上 述 scsi1.sharedBus = "virtual" 改 成 scsi1:1.shared = "true" 或 者 是 scsi2:0.SharedBus= “ Virtual” 。其实 Buslogic 和 LSIlogic 都是虚拟硬盘 SCSI 设备的类型。 这里的 Bus 实际就是指的 Buslogic, 是虚拟硬盘类型。 |
运行 D MDSC 1和 D MDSC 2虚拟机,
通过 fdisk – l和lsblk命令从系统层面查看磁盘信息

四.网络 前置作业
4.1 Windows主机虚拟网卡配置
VMware Network Adapter VMnet1 虚拟网卡配置 :

VMware Network Adapter VMnet8 虚拟网卡配置:

4.2 D MDSC 虚拟机网络配置
D MDSC1 网络配置 :

D MDSC2 网络配置:

五. 系统前置作业(节点 1、2均执行)
5.1 安装图形化组件
由于系统是默认建议安装,缺少图形化组件,因此需手动安装。
5.1.1 VM ware平台连接系统镜像

5.1.2 挂载 I SO 光盘

5.1.3 配置本地 Y UM 源:

5.1.4 安装图形化组件
清空 Y UM 缓存,安装图形化组件 ”S erver with GUI”

大概安装几分钟结束,查看确认是否默认图形化启动,然后开启图形化界面


5.2 关闭防火墙
关闭防火墙并设置开机默认关闭防火墙

5.3 关闭 Selinux
设置开机默认关闭 selinux,并修改当前selinux状态为disabled

5.4 修改主机名及 hosts文件配置
编辑 / etc/hostname 文件静态修改主机名,通过 hostname命名修改当前主机名

修改 / etc/hosts 文件
六.数据库前置作业 (节点 1、2均执行)
6 .1 创建 数据库系统用户和组
|
groupadd -g 2001 dinstall useradd -u 2002 -g dinstall dmdba echo "P@ssw0rd"|passwd --stdin dmdba |
6.2 创建数据库相关目录
|
mkdir -p /dmdsc/{dmdbms,dm_backup,cssm_log,core} mkdir -p /dmdsc/dmdbms/dsc_config/ mkdir -p /dmdsc/dmdbms/log/logcommit mkdir /dmarch chmod 755 /dmdsc -R chown dmdba:dinstall /dmdsc/ -R chmod 755 /dmarch -R chown dmdba.dinstall /dmarch -R |
6 .3 修改系统内核参数
因为Linux系统的内核参数信息都放在内存中,可以通过命令直接修改且立即生效,但是当系统重启后,原有的参数配置会丢失,每次系统启动都需要去读取 /etc/sysctl.conf 文件来获取内核参数信息
cat >> /etc/sysctl.conf<< EOF
fs.file-max = 6815744
fs.aio-max-nr = 1048576
kernel.shmmni = 4096
kernel.sem = 250 32000 100 128
kernel.core_pattern=/dmdsc/core/core-%e-%p-%t
net.core.rmem_default = 4194304
net.core.rmem_max = 4194304
net.core.wmem_default = 262144
net.core.wmem_max = 1048576vm.min_free_kbytes = 65536
vm.swappiness = 20
vm.dirty_background_ratio = 3
vm.dirty_ratio = 80
vm.dirty_expire_centisecs = 500
vm.dirty_writeback_centisecs = 100
vm.overcommit_memory=0
net.ipv4.conf.all.rp_filter=0
net.ipv4.conf.default.rp_filter=0
net.ipv4.ip_local_port_range = 9000 65500
EOF
提交内核参数 sysctl -p
6 .4 修改用户资源限制
配置 /etc/security/limits.conf
cat >>/etc/security/limits.conf<< EOF
dmdba soft nice 65536
dmdba hard nice 65536
#dmdba soft as unlimited
#dmdba hard as unlimited
dmdba soft fsize unlimited
dmdba hard fsize unlimited
dmdba soft nproc 65536
dmdba hard nproc 65536
dmdba soft nofile 65536
dmdba hard nofile 65536
dmdba soft core unlimited
dmdba hard core unlimited
dmdba soft data unlimited
dmdba hard data unlimited
EOF
6 .5 配置/etc/profile文件
[root@rac1 yum.repos.d]# cat >> /etc/profile << EOF
> if [ \$USER = "oracle" ] || [ \$USER = "grid" ];then
> if [ \$SHELL = "/bin/ksh" ];then
> ulimit -p 16384
> ulimit -n 65536
> else
> ulimit -u 16384 -n 65536
> fi
> umask 022
> fi
> #############################
> export PATH=\$PATH:/u01/app/11.2.0/grid/bin
> #color of grep
> alias grep='grep --color=auto'
> EOF
[root@rac1 yum.repos.d]#
6 .6 配置用户环境变量
|
S u - dmdba cat >> /home/dmdba/.bash_profile<< EOF PATH=$PATH:$HOME/.local/bin:$HOME/bin export DM_INSTALL_TMPDIR=/tmp export DM_HOME="/dmdsc/dmdbms" export LD_LIBRARY_PATH="$LD_LIBRARY_PATH:/dmdsc/dmdbms/bin" export PATH=$PATH:$DM_HOME/bin:$DM_HOME/tool export LD_LIBRARY_PATH=$LD_LIBRARY_PATH export NLS_LANG=AMERICAN_AMERICA.ZHS16GBK EOF |

七 . 配置共享磁盘 U UID 绑定(节点 1、2均执行)
7.1 创建 uuid .sh 脚本
绑定设备的 UUID。 创建 uuid.sh 文件, 使用脚本生成配置文件。
|
vi uuid.sh for i in b c d e f ; do echo /dev/sd$i `/usr/lib/udev/scsi_id --whitelisted --replace-whitespace --device=/dev/sd$i` done
curr=$(cd "$(dirname "$0")";pwd) for i in b c d e f ; do echo "KERNEL==\"sd*\",SUBSYSTEM==\"block\", PROGRAM==\"/usr/lib/udev/scsi_id --whitelisted --replace-whitespace --device=/dev/\$name\",RESULT==\"`/usr/lib/udev/scsi_id --whitelisted --replace-whitespace --device=/dev/sd$i`\", SYMLINK+=\"asmdisk/dsc_sd$i\",OWNER=\"dmdba\", GROUP=\"dinstall\",MODE=\"0660\"" >> $curr/88-dm-asmdevices.rules done |
执行 uuid 脚本生成 88-dm-asmdevices.rules 文件

|
脚本执行成功后, 当前目录会生成绑定配置文件 88-dm-asmdevices.rules ( 每一个 KERNEL 是一行, 中间不要有空行) , 可以根据自己的需求进行修改别名 SYMLINK+="", 注释说明 : 定义: UUID 是一种全局唯一的标识符, 用于唯一标识设备。 在多路径配置中, 可以使用设备的 UUID 来标识设备, 而不依赖于具体的设备文件名。 配置: 使用 UUID 方式配置时, 不再依赖于设备文件名, 而是使用设备的 UUID 来标识路径。 优点: 不受设备文件名变化的影响: 由于使用 UUID, 不受设备文件名变化的影响, 配置更加稳定。 缺点: 配置相对繁琐: 相对于直接使用设备文件名, 使用 UUID 方式配置相对繁琐一些。 |
7 .2 编辑 udev 规则文件
编辑 88-dm-asmdevices.rules 文件,修改 SYMLINK 参数指定别名
|
KERNEL=="sd*",SUBSYSTEM=="block", PROGRAM=="/usr/lib/udev/scsi_id --whitelisted --replace-whitespace --device=/dev/$name",RESULT=="36000c29c7c663f812e8f728bef6ce1ad", SYMLINK+="asmdisk/dsc_dcr",OWNER="dmdba", GROUP="dinstall",MODE="0660" KERNEL=="sd*",SUBSYSTEM=="block", PROGRAM=="/usr/lib/udev/scsi_id --whitelisted --replace-whitespace --device=/dev/$name",RESULT=="36000c296baa3b44042e56ecff7bbba4a", SYMLINK+="asmdisk/dsc_vote",OWNER="dmdba", GROUP="dinstall",MODE="0660" KERNEL=="sd*",SUBSYSTEM=="block", PROGRAM=="/usr/lib/udev/scsi_id --whitelisted --replace-whitespace --device=/dev/$name",RESULT=="36000c2920f4b01f7f2ec74544a62f343", SYMLINK+="asmdisk/dsc_log",OWNER="dmdba", GROUP="dinstall",MODE="0660" KERNEL=="sd*",SUBSYSTEM=="block", PROGRAM=="/usr/lib/udev/scsi_id --whitelisted --replace-whitespace --device=/dev/$name",RESULT=="36000c291f57d080950629d1c2d3ba68f", SYMLINK+="asmdisk/dsc_data1",OWNER="dmdba", GROUP="dinstall",MODE="0660" KERNEL=="sd*",SUBSYSTEM=="block", PROGRAM=="/usr/lib/udev/scsi_id --whitelisted --replace-whitespace --device=/dev/$name",RESULT=="36000c29784aea0eaef1d7d86f86019fa", SYMLINK+="asmdisk/dsc_data2",OWNER="dmdba", GROUP="dinstall",MODE="0660" |
|
这个配置文件是一个 udev 规则文件, 用于在 Linux 系统中创建设备符号链接以及设置设备的权限和所有者。 udev 是 Linux 系统中的设备管理器, 用于在系统启动时动态创建和管理设备文件。 KERNEL=="sd?" : 这个条件匹配任何以 "sd" 开头, 后跟一个字符的块设备, 其中 "?" 是一个通配符, 表 示任何单个字符。 这通常用于匹配 SCSI 设备, 如硬盘。 SUBSYSTEM=="block" : 规定匹配的设备必须属于 block 子系统。 PROGRAM=="/usr/lib/udev/scsi_id --replace-whitespace --device=/dev/$name" : 这是一个程序调用, 用于获取 SCSI 设备的唯一标识符( UUID ) 。 --replace-whitespace 参数表示替换空格。 RESULT==" " : 这个条件检查上述程序调用的结果是否等于指定的 SCSI 设备标识符。 SYMLINK+="dmredo" : 如果所有的前面的条件都满足, 那么就会创建一个符号链接, 将匹配的设备映射到 /dev/dmredo 。 OWNER="dmdba", GROUP="dinstall", MODE="0660" : 设置创建的符号链接 /dev/dmredo 的所有者为 dmdba , 所属组为 dinstall , 权限为 0660 。 综合来说, 多路径方式侧重于利用多个物理路径提高冗余性和性能, 而 UUID 方式侧重于使用设备的唯一标 识符来防止配置在设备文件名变化时的不稳定性。 在实际应用中, 可以根据具体需求选择合适的方式。 |
此处因 scsi_id 无法查询出 U UID 信息的问题卡顿,原因如下:
在 VMware 等虚拟化平台中,若 scsi_id 无输出,需通过配置虚拟机文件(如 .vmx )启用 UUID 支持:

修改完配置文件后重启两台虚拟机,重复上述操作。
生成配置文件后,复制文件至 /etc/udev/rules.d/路径下
cp 88-dm-asmdevices.rules /etc/udev/rules.d/88-dm-asmdevices.rules
重新加载udev服务
/sbin/udevadm control --reload-rules
/sbin/udevadm trigger --action=add
/sbin/udevadm trigger --type=devices --action=change
7 .3 修改权限并开机自启生效
修改共享磁盘所有者和所属组 chown -R dmdba:dinstall /dev/asm*

将命令添加到 /etc/rc.local 随系统启动执行

八. 集群安装部署
8 .1 数据库安装介质(节点 1、2均执行)
上传 D M8 数据库安装包并解压缩,挂载 I SO 镜像,授权。

8 .2 安装数据库软件(节点 1、2均执行)
|
[dmdba@DMDESC1 ~]$ ./DMInstall.bin -i Installer Language: [1]: 简体中文 [2]: English Please select the installer's language [2]: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) 阿拉斯加 [ 5]: (GTM-08:00) 太平洋时间(美国和加拿大) [ 6]: (GTM-07:00) 亚利桑那 [ 7]: (GTM-06:00) 中部时间(美国和加拿大) [ 8]: (GTM-05:00) 东部部时间(美国和加拿大) [ 9]: (GTM-04:00) 大西洋时间(美国和加拿大) [10]: (GTM-03:00) 巴西利亚 [11]: (GTM-02:00) 中大西洋 [12]: (GTM-01:00) 亚速尔群岛 [13]: (GTM) 格林威治标准时间 [14]: (GTM+01:00) 萨拉热窝 [15]: (GTM+02:00) 开罗 [16]: (GTM+03:00) 莫斯科 [17]: (GTM+04:00) 阿布扎比 [18]: (GTM+05:00) 伊斯堡 [19]: (GTM+06: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) 基里巴斯 请选择时区 [5]:21
安装类型 : 1 典型安装 2 服务器 3 客户端 4 自定义 请选择安装类型的数字序号 [1 典型安装]: 所需空间 : 1783M
请选择安装目录 [/home/dmdba/dmdbms]:/dmdsc/dmdbms 可用空间 : 87G 是否确认安装路径 (/dmdsc/dmdbms)? (Y/y:是 N/n:否) [Y/y]:y
安装前小结 安装位置 : /dmdsc/dmdbms 所需空间 : 1783M 可用空间 : 87G 版本信息 : 有效日期 : 安装类型 : 典型安装 是否确认安装 ? (Y/y:是 N/n:否):y 2025-12-09 17:12:56 [INFO] 安装达梦数据库... 2025-12-09 17:12:56 [INFO] 安装 基础 模块... 2025-12-09 17:13:11 [INFO] 安装 服务器 模块... 2025-12-09 17:13:15 [INFO] 安装 客户端 模块... 2025-12-09 17:13:28 [INFO] 安装 驱动 模块... 2025-12-09 17:13:37 [INFO] 安装 手册 模块... 2025-12-09 17:13:38 [INFO] 安装 服务 模块... 2025-12-09 17:13:39 [INFO] 移动日志文件。 2025-12-09 17:13:40 [INFO] 安装达梦数据库完成。
请以 root系统用户执行命令: /dmdsc/dmdbms/script/root/root_installer.sh
安装结束 |
按照提示切换至 root用户下执行脚本
|
[dmdba@DMDESC1 ~]$ exit logout [root@DMDESC1 dmdba]# /dmdsc/dmdbms/script/root/root_installer.sh 移动 /dmdsc/dmdbms/bin/dm_svc.conf 到/etc目录 创建 DmAPService服务 Created symlink from /etc/systemd/system/multi-user.target.wants/DmAPService.service to /usr/lib/systemd/system/DmAPService.s ervice.创建服务(DmAPService)完成 启动 DmAPService服务 [root@DMDESC1 dmdba]# |
8 .3 配置 dmdcr_cfg.ini 文件(节点 1、2均执行)
8 .3.1 创建相关目录
|
[root@DMDSC1 dmdba]# mkdir -p /dmdsc/dmdbms/dsc_config/ [root@DMDSC1 dmdba]# mkdir -p /dmdsc/dmdbms/log/logcommit [root@DMDSC1 dmdba]# chown dmdba:dinstall /dmdsc/ -R |
8 .3.2 编辑集群配置文件
vi /dmdsc/dmdbms/dsc_config/dmdcr_cfg.ini
|
DCR_N_GRP = 3 ##集群环境有多少个 GROUP, 范围: 1~16 DCR_VTD_PATH = /dev/asmdisk/dsc_vote ##规划的vote盘 DCR_OGUID = 20251210 ##消息标识,长度不超过19位只能为数字,DMCSSM 登录DMCSS 消息校验用
[GRP] ##新建一个 GROUP DCR_GRP_TYPE = CSS ##组类型( CSS/ASM/DB) DCR_GRP_NAME = GRP_CSS ##CSS服务组名,固定名称 DCR_GRP_N_EP = 2 ##组内节点个数 DCR_GRP_DSK_CNT = 60 ##磁盘心跳容错时间, 单位:秒 [GRP_CSS] ##与CSS [GRP]标签配置中的DCR_GRP_NAME保持一致 DCR_EP_NAME = GRP_CSS1 ##节点CSS服务名 DCR_EP_HOST = 10.10.1.21 ##dmdsc1心跳ip地址 DCR_EP_PORT = 9220 ##CSS端口 [GRP_CSS] ##与[GRP]标签配置中的DCR_GRP_NAME保持一致 DCR_EP_NAME = GRP_CSS2 ##节点CSS服务名 DCR_EP_HOST = 10.10.1.22 ##dmdsc2心跳ip地址 DCR_EP_PORT = 9220 ##CSS端口
[GRP] DCR_GRP_TYPE = ASM DCR_GRP_NAME = GRP_ASM ##ASM服务组名,固定名称 DCR_GRP_N_EP = 2 ##组内节点个数 DCR_GRP_DSK_CNT = 60 ##磁盘心跳容错时间, 单位:秒 [GRP_ASM] ##与ASM [GRP]标签配置中的DCR_GRP_NAME保持一致 DCR_EP_NAME = GRP_ASM1 ##节点ASM服务名 DCR_EP_SHM_KEY = 93360 ##共享内存标识 DCR_EP_SHM_SIZE = 100 ##共享内存大小,每10M管理600G的ASM磁盘空间,初始化配置100,可管理6T DCR_EP_HOST = 10.10.1.21 ##dmdsc1心跳ip地址 DCR_EP_PORT = 8221 ##ASM端口 DCR_EP_ASM_LOAD_PATH = /dev/asmdisk ##规划的磁盘目录 [GRP_ASM] ##与ASM [GRP]标签配置中的DCR_GRP_NAME保持一致 DCR_EP_NAME = GRP_ASM2 ##节点ASM服务名 DCR_EP_SHM_KEY = 93361 ##共享内存标识 DCR_EP_SHM_SIZE = 100 ##共享内存大小,每10M管理600G的ASM磁盘空间,初始化配置100,可管理6T DCR_EP_HOST = 10.10.1.22 ##dmdsc2心跳ip地址 DCR_EP_PORT = 8221 ##ASM端口 DCR_EP_ASM_LOAD_PATH = /dev/asmdisk ##规划的磁盘目录
[GRP] DCR_GRP_TYPE = DB DCR_GRP_NAME = GRP_DB ##DB服务组名,固定名称 DCR_GRP_N_EP = 2 ##组内节点个数 DCR_GRP_DSK_CNT = 60 ##磁盘心跳容错时间, 单位:秒 [GRP_DB] ##与DB [GRP]标签配置中的DCR_GRP_NAME保持一致 DCR_EP_NAME = DMDSC1 ##节点1实例名,和dm.ini 的 INSTANCE_NAME 一致 DCR_EP_SEQNO = 0 ##固定数值,组内序号, 不能重复 DCR_EP_PORT = 5236 ##实例端口,和dm.ini 的 PORT_NUM 一致 DCR_CHECK_PORT = 7222 ##DCR 检查端口 [GRP_DB] ##与DB [GRP]标签配置中的DCR_GRP_NAME保持一致 DCR_EP_NAME = DMDSC2 ##节点2实例名,和dm.ini 的 INSTANCE_NAME 一致 DCR_EP_SEQNO = 1 ##固定数值,组内序号, 不能重复 DCR_EP_PORT = 5236 ##实例端口,和dm.ini 的 PORT_NUM 一致 DCR_CHECK_PORT = 7222 ##DCR 检查端口 |
8 .4 初始化共享磁盘(节点 1执行)
vi /dmdsc/dmdbms/dsc_config/asmcmd.txt
|
#asm script file create dcrdisk '/dev/asmdisk/dsc_dcr' 'DCR' ##创建一个分布式集群资源磁盘,挂载点为/dev/asmdisk/dsc_dcr,别名为 DCR create votedisk '/dev/asmdisk/dsc_vote' 'VOTE' ##创建一个分布式集群资源磁盘,挂载点为/dev/asmdisk/dsc_vote,别名为 VOTE init dcrdisk '/dev/asmdisk/dsc_dcr' from ' /dmdsc/dmdbms/dsc_config/dmdcr_cfg.ini ' identified by ' P@ssw0rd ' ##初始化/dev/asmdisk/dsc_dcr 分布式集群资源磁盘,使用配置文件 dmdcr_cfg.ini 进行设置 init votedisk '/dev/asmdisk/dsc_vote' from ' /dmdsc/dmdbms/dsc_config/dmdcr_cfg.ini ' ##初始化/dev/asmdisk/dsc_vote 分布式集群资源磁盘,使用配置文件 dmdcr_cfg.ini 进行设置 create asmdisk '/dev/asmdisk/dsc_log' 'LOG' ##创建一个分布式集群资源磁盘,挂载点为/dev/asmdisk/dsc_log,别名为 LOG create asmdisk '/dev/asmdisk/dsc_data1' 'DATA' ##创建一个分布式集群资源磁盘,挂载点为/dev/asmdisk/dsc_data1,别名为 DATA create asmdisk '/dev/asmdisk/dsc_data2' ' ARCH ' ##创建一个分布式集群资源磁盘,挂载点为/dev/asmdisk/dsc_data2,别名为 ARCH |
执行脚本创建共享磁盘
dmasmcmd SCRIPT_FILE=/dmdsc/dmdbms/dsc_config/asmcmd.txt

创建成功后登录 asm检查磁盘

8 .5 配置 dmasvrmal.ini 文件
创建节点目录
节点 1 :
mkdir –p /dmdsc/dmdbms/dsc_config/DMDSC1
节点 2 :
mkdir –p /dmdsc/dmdbms/dsc_config/DMDSC2
在以上两个路径下创建并编辑 dmasvrmal.ini 文件
|
[MAL_INST1] MAL_INST_NAME = GRP_ASM1 ## 与 dmdcr_cfg.ini 配置文件中 ASM 组中配置的节点名称保持一致 MAL_HOST = 10.10.1.21 ##dmdsc1 心跳 ip 地址 MAL_PORT = 4234 ##MAL 监听端口 [MAL_INST2] MAL_INST_NAME = GRP_ASM2 ## 与 dmdcr_cfg.ini 配置文件中 ASM 组中配置的节点名称保持一致 MAL_HOST = 10.10.1.22 ##dmdsc2 心跳 ip 地址 MAL_PORT = 4234 ##MAL 监听端口 |


8 .6 配置 dmdcr.ini 文件
节点 1 :
vi /dmdsc/dmdbms/dsc_config/DMDSC1/dmdcr.ini
|
DMDCR_PATH = /dev/asmdisk/dsc_dcr DMDCR_MAL_PATH = /dmdsc/dmdbms/dsc_config/DMDSC1/dmasvrmal.ini DMDCR_SEQNO = 0 DMDCR_AUTO_OPEN_CHECK = 90 ## 指定日志级别 1:TRACE ;2:WARN; 3:ERROR ;4:FATAL, 缺省为 1 。 DMDCR_ASM_TRACE_LEVEL = 2 ##CSS 认定 ASM 故障重启的时间,设置为 0 则不自动拉起 DMDCR_ASM_RESTART_INTERVAL = 0 ## 服务名与注册的服务名保持一致 DMDCR_ASM_STARTUP_CMD = /dmdsc/dmdbms/bin/DmAsmService_DMDSC1 start ##CSS 认定 DSC 故障重启的时间,设置为 0 则不自动拉起 DMDCR_DB_RESTART_INTERVAL = 0 ## 服务名与注册的服务名保持一致 DMDCR_DB_STARTUP_CMD = /dmdsc/dmdbms/bin/DmAsmService_DMDSC1 start |

节点 2:
vi /dmdsc/dmdbms/dsc_config/DMDSC2/dmdcr.ini
|
DMDCR_PATH = /dev/asmdisk/dsc_dcr DMDCR_MAL_PATH = /dmdsc/dmdbms/dsc_config/DMDSC2/dmasvrmal.ini DMDCR_SEQNO = 1 DMDCR_AUTO_OPEN_CHECK = 90 ##指定日志级别 1:TRACE ;2:WARN; 3:ERROR ;4:FATAL,缺省为 1。 DMDCR_ASM_TRACE_LEVEL = 2 ##CSS认定ASM故障重启的时间,设置为0则不自动拉起 DMDCR_ASM_RESTART_INTERVAL = 0 ##服务名与注册的服务名保持一致 ##DMDCR_ASM_STARTUP_CMD = /dmdsc/dmdbms/ bin /DmAsmService_DMDSC2 start ##CSS认定DSC故障重启的时间,设置为0则不自动拉起 DMDCR_DB_RESTART_INTERVAL = 0 ##服务名与注册的服务名保持一致 DMDCR_DB_STARTUP_CMD = /dmdsc/dmdbms/bin/DmAsmService_DMDSC2 start |

注意 :
当前为手动拉起节点 1 和节点 2 的 ASM 和 DMSERVER 服务,因此最后四行自动拉起的配置参数先注释,待集群配置完成后, 再删除 ” # ” 取消注释使其生效 。
8 .7 启动 DMCSS、 DMASM 服务
在两个节点主机分别启动 dmcss 命令:
节点 1:
dmcss DCR_INI=/dmdsc/dmdbms/dsc_config/DMDSC1/dmdcr.ini
节点 2:
dmcss DCR_INI=/dmdsc/dmdbms/dsc_config/DMDSC2/dmdcr.ini
在两个节点主机分别启动 dmasmsvr 命令:
节点 1:
dmasmsvr DCR_INI=/dmdsc/dmdbms/dsc_config/DMDSC1/dmdcr.ini
节点 2:
dmasmsvr DCR_INI=/dmdsc/dmdbms/dsc_config/DMDSC2/dmdcr.ini
前面配置 dmdcr.ini 文件中的 DmAsmService、 DmService 并未创建出来,需要多开几个终端窗口手动启动,这四个终端窗口暂时不能关闭。
8 .8 创建 D MASM 磁盘组(节点 1执行)
执行 dmasmtool 命令创建 D MASM 磁盘组
|
[dmdba@DMDESC1 DMDSC1]$ dmasmtool DCR_INI=/dmdsc/dmdbms/dsc_config/DMDSC1/dmdcr.ini dmasmtool V8 ##创建日志磁盘组 ASM>create diskgroup 'DMLOG' asmdisk '/dev/asmdisk/dsc_log' Used time: 58.841(ms). ##创建数据磁盘组 ASM>create diskgroup 'DMDATA' asmdisk '/dev/asmdisk/dsc_data1' Used time: 49.021(ms). ##数据磁盘组添加磁盘 ASM>create diskgroup 'DMARCH' asmdisk '/dev/asmdisk/dsc_data2' Used time: 47.480(ms). ASM> |
在节点 2查询共享磁盘确认是否创建成功

8 .9 配置 dminit.ini文件(节点1、2均执行)
vi /dmdsc/dmdbms/dsc_config/dminit.ini
|
db_name = DMDSC #初始化数据库名称大写 system_path = +DMDATA #初始化数据库存放的路径 system = +DMDATA/DMDSC/system.dbf #SYSTEM 表空间路径 system_size = 1024 #SYSTEM 表空间大小 roll = +DMDATA/DMDSC/roll.dbf #ROLL 表空间路径 roll_size = 1024 #ROLL 表空间大小 main = +DMDATA/DMDSC/main.dbf #MAIN 表空间路径 main_size = 1024 #MAIN 表空间大小 ctl_path = +DMDATA/DMDSC/dm.ctl #DM.CTL 控制文件路径 ctl_size = 8 #DM.CTL 控制文件大小 log_size = 2048 #日志文件大小 dcr_path = /dev/asmdisk/dsc_dcr #dcr 磁盘路径 dcr_seqno = 0 #连接 DMASM 节点节点号 auto_overwrite = 1 #文件存在时的处理方式0或1 PAGE_SIZE = 32 EXTENT_SIZE = 32 CHARSET =1 #应用提供字符集 CASE_SENSITIVE =1 #应用提供大小写是否敏感 未提供默认敏感 BLANK_PAD_MODE=0 #应用提供结尾是否空格填充 [DMDSC1] ##与dmdcr_cfg.ini配置文件中DB组中配置的节点名称保持一致 config_path = /dmdsc/dmdbms/dsc_config/DMDSC1 #路径要有创建权限 port_num = 5236 mal_host = 10.10.1.21 #dmdsc1心跳ip,节点 MAL 系统使用 IP mal_port = 4234 LOG_PATH = +DMLOG/DMDSC1_01.log LOG_PATH = +DMLOG/DMDSC1_02.log [DMDSC2] ##与dmdcr_cfg.ini配置文件中DB组中配置的节点名称保持一致 config_path = /dmdsc/dmdbms/dsc_config/DMDSC2 #路径要有创建权限 port_num = 5236 mal_host = 10.10.1.22 #dmdsc2心跳ip mal_port = 4234 LOG_PATH = +DMLOG/DMDSC2_01.log LOG_PATH = +DMLOG/DMDSC2_02.log |
8 .9.1 初始化报错 - -- 未指定密码
在节点 1执行初始化数据库命令
dminit control=/dmdsc/dmdbms/dsc_config/dminit.ini

执行报错,初始化需 指定sysdba 和 sysauditor 的密码
修改 /dmdsc/dmdbms/dsc_config/dminit.ini 文件添加密码设置
|
vi /dmdsc/dmdbms/dsc_config/dminit.ini db_name = DMDSC #初始化数据库名称大写 system_path = +DMDATA #初始化数据库存放的路径 system = +DMDATA/DMDSC/system.dbf #SYSTEM 表空间路径 system_size = 1024 #SYSTEM 表空间大小 roll = +DMDATA/DMDSC/roll.dbf #ROLL 表空间路径 roll_size = 1024 #ROLL 表空间大小 main = +DMDATA/DMDSC/main.dbf #MAIN 表空间路径 main_size = 1024 #MAIN 表空间大小 ctl_path = +DMDATA/DMDSC/dm.ctl #DM.CTL 控制文件路径 ctl_size = 8 #DM.CTL 控制文件大小 log_size = 2048 #日志文件大小 dcr_path = /dev/asmdisk/dsc_dcr #dcr 磁盘路径 dcr_seqno = 0 #连接 DMASM 节点节点号 auto_overwrite = 1 #文件存在时的处理方式0或1 PAGE_SIZE = 32 EXTENT_SIZE = 32 SYSDBA_PWD=P@ssw0rd SYSAUDITOR_PWD=P@ssw0rd CHARSET =1 #应用提供字符集 CASE_SENSITIVE =1 #应用提供大小写是否敏感 未提供默认敏感 BLANK_PAD_MODE=0 #应用提供结尾是否空格填充 [DMDSC1] ##与dmdcr_cfg.ini配置文件中DB组中配置的节点名称保持一致 config_path = /dmdsc/dmdbms/dsc_config/DMDSC1 #路径要有创建权限 port_num = 5236 mal_host = 10.10.1.21 #dmdsc1心跳ip,节点 MAL 系统使用 IP mal_port = 4234 LOG_PATH = +DMLOG/DMDSC1_01.log LOG_PATH = +DMLOG/DMDSC1_02.log [DMDSC2] ##与dmdcr_cfg.ini配置文件中DB组中配置的节点名称保持一致 config_path = /dmdsc/dmdbms/dsc_config/DMDSC2 #路径要有创建权限 port_num = 5236 mal_host = 10.10.1.22 #dmdsc2心跳ip mal_port = 4234 LOG_PATH = +DMLOG/DMDSC2_01.log LOG_PATH = +DMLOG/DMDSC2_02.log |
8 .9.2 初始化报错 - -- 磁盘空间不足
修改完后再次执行初始化仍报错

提示创建 rlog文件失败,按照提示查看 /dmdsc/dmdbms/log/dm_DMDSC1_202512.log 日志

报错提示磁盘空间不足!
这下就麻烦了,初始创建的共享磁盘容量太小, 需要扩容共享磁盘组容量或者调整日志文件大小,这里就先以扩容共享磁盘作为解决方案
|
vmware-vdiskmanager -x 30GB “D:\Software\VMware\Virtual Machines\Share Disk\dcr.vmdk”
vmware-vdiskmanager -x 30GB “D:\Software\VMware\Virtual Machines\Share Disk\vote.vmdk”
vmware-vdiskmanager -x 50GB “D:\Software\VMware\Virtual Machines\Share Disk\log.vmdk”
vmware-vdiskmanager -x 100GB “D:\Software\VMware\Virtual Machines\Share Disk\datadisk1.vmdk”
vmware-vdiskmanager -x 50GB “D:\Software\VMware\Virtual Machines\Share Disk\datadisk2.vmdk” |
重启双节点虚拟机,共享磁盘已扩容完成,但 DMASM 磁盘还未重建生效
先把 /dmdsc/dmdbms/dsc_config/DMDSC1/dmdcr.ini 配置文件中自动拉起的内容注释
关闭自动拉起功能后再手动停止 A SM 、 C SS 服务

注意需要在节点 1和节点2都停止A SM 、 C SS 服务
进入 DMASM 重新执行 D CR 和 V OTE 盘的初始化操作

通过 l istdisks /dev/asmdisk 检查是否生效

然后再重新创建另外三个 L OG 、 A RCH 和 D ATA 盘,无需初始化,后台会自动重建

8 .9.3 初始化报错 - -- 启动顺序错误
再次执行数据库初始化扔报错,因为刚才手动关闭了 A SM 、 C SS 服务,需要手动开启,并且需要先开启 C SS 服务,然后再开启 A SM 服务,节点 2同样执行此操作

8 .9.4 初始化报错 - --ASM 磁盘未识别
初始化报错 '+DMDATA/DMDSC' 创建文件失败

通过 dmasmtool查看发现另外三块A SM 磁盘还没识别生效

通过 dmasmtool工具进入A SM ,再次创建 D MASM 磁盘组

最后节点 1初始化数据库成功

8 .9.5 初始化报错 - --dcr_seqno 值配置错误
但是节点 2初始化数据仍失败报错
DESC:Connect to dmasmsvr(10.10.1.21:8221) failed with code -7017, target dmasmsvr is nonlocal, please check if dcr path and dcr seqno configu
red right.

根据报错提示检查 dcr path and dcr seqno 配置,发现节点 2的 dminit.ini 配置文件中
dcr_seqno = 0 ,将其改为 dcr_seqno = 1 后重新执行初始化

节点 2数据库初始化成功。
节点 1和节点2都检查C SS 、 A SM 、 D SC 服务状态,手动开启 D SC 服务

8 .10 配置 dmarch.ini 文件
节点 1:
创建并编辑 dm.ini文件
vi /dmdsc/dmdbms/dsc_config/DMDSC1/dm.ini
创建并编辑dmarch .ini 文件
vi /dmdsc/dmdbms/dsc_config/DMDSC1/dmarch.ini
|
ARCH_WAIT_APPLY = 0 ARCH_LOCAL_SHARE = 1 ARCH_LOCAL_SHARE_CHECK = 0 [ARCHIVE_LOCAL1] ARCH_TYPE = LOCAL ARCH_DEST = +DMARCH/DMDSC1/arch ARCH_FILE_SIZE = 2048 ARCH_RESERVE_TIME= 4320 ##归档日志保留时间3天,单位分钟 ARCH_SPACE_LIMIT = 10240 ARCH_FLUSH_BUF_SIZE = 32 [ARCHIVE_REMOTE1] ARCH_TYPE = REMOTE ARCH_DEST = DMDSC2 ARCH_INCOMING_PATH = +DMARCH/DMDSC2/arch ARCH_FILE_SIZE = 2048 ARCH_SPACE_LIMIT = 10240 ARCH_FLUSH_BUF_SIZE = 32 [ARCHIVE_LOCAL2] ARCH_TYPE = LOCAL ARCH_DEST = /dmarch ARCH_FILE_SIZE = 2048 ARCH_SPACE_LIMIT = 10240 ARCH_FLUSH_BUF_SIZE = 32 |
节点 2:
创建并编辑 dm.ini文件
vi /dmdsc/dmdbms/dsc_config/DMDSC2/dm.ini
|
ARCH_WAIT_APPLY = 0 ARCH_LOCAL_SHARE = 1 ARCH_LOCAL_SHARE_CHECK = 0 [ARCHIVE_LOCAL1] ARCH_TYPE = LOCAL ARCH_DEST = +DMARCH/DMDSC2/arch ARCH_FILE_SIZE = 2048 ARCH_RESERVE_TIME= 4320 ##归档日志保留时间3天,单位分钟 ARCH_SPACE_LIMIT = 10240 ARCH_FLUSH_BUF_SIZE = 32 [ARCHIVE_REMOTE1] ARCH_TYPE = REMOTE ARCH_DEST = DMDSC1 ARCH_INCOMING_PATH = +DMARCH/DMDSC1/arch ARCH_FILE_SIZE = 2048 ARCH_SPACE_LIMIT = 10240 ARCH_FLUSH_BUF_SIZE = 32 [ARCHIVE_LOCAL2] ARCH_TYPE = LOCAL ARCH_DEST = /dmarch ARCH_FILE_SIZE = 2048 ARCH_SPACE_LIMIT = 10240 ARCH_FLUSH_BUF_SIZE = 32 |
8 .11 注册 CSS、 ASM、 DMSERVER 后台服务
节点 1 :
|
/dmdsc/dmdbms/script/root/dm_service_installer.sh -t dmcss -dcr_ini /dmdsc/dmdbms/dsc_config/DMDSC1/dmdcr.ini -p CSS
/dmdsc/dmdbms/script/root/dm_service_installer.sh -t dmasmsvr -dcr_ini /dmdsc/dmdbms/dsc_config/DMDSC1/dmdcr.ini -y DmCSSServiceCSS.service -p ASM
/dmdsc/dmdbms/script/root/dm_service_installer.sh -t dmserver -dm_ini /dmdsc/dmdbms/dsc_config/DMDSC1/dm.ini -dcr_ini /dmdsc/dmdbms/dsc_config/DMDSC1/dmdcr.ini -y DmASMSvrServiceASM.service -m open -p DSC
|

节点 2 :
|
/dmdsc/dmdbms/script/root/dm_service_installer.sh -t dmcss -dcr_ini /dmdsc/dmdbms/dsc_config/DMDSC2/dmdcr.ini -p CSS
/dmdsc/dmdbms/script/root/dm_service_installer.sh -t dmasmsvr -dcr_ini /dmdsc/dmdbms/dsc_config/DMDSC2/dmdcr.ini -y DmCSSServiceCSS.service -p ASM
/dmdsc/dmdbms/script/root/dm_service_installer.sh -t dmserver -dm_ini /dmdsc/dmdbms/dsc_config/DMDSC2/dm.ini -dcr_ini /dmdsc/dmdbms/dsc_config/DMDSC2/dmdcr.ini -y DmASMSvrServiceASM.service -m open -p DSC
|

将 dmdcr.ini 文件最后注释取消, 使其自动拉起生效
8 .12 配置 dmmal.ini 文件 (节点 1、2均执行)
配置说明: 配置 dblink 通过 mal 进行通信, 需要配置各个节点的 dmmal 相互之间能够通讯, 对于集群之间,各个节点的 dmmal.ini 必须完全保持一致, 且各个节点 instance_name 不同。
|
#DaMeng Database Mail Configuration file #this is comments MAL_CHECK_INTERVAL = 5 MAL_COMBIN_BUF_SIZE = 0 MAL_CONN_FAIL_INTERVAL = 5 MAL_LOGIN_TIMEOUT = 10 MAL_BUF_SIZE = 100 MAL_SYS_BUF_SIZE = 0 MAL_VPOOL_SIZE = 128 MAL_COMPRESS_LEVEL = 0 MAL_TEMP_PATH = [mal_inst0] MAL_INST_NAME = DMDSC1 #dm.ini 中 instance_name 保持一致 MAL_HOST = 10.10.1.21 MAL_PORT = 4234 MAL_INST_HOST = 192.168.1.21 MAL_INST_PORT = 5236 #dm.ini 中 port_num 保持一致 MAL_DW_PORT = 52141 MAL_LINK_MAGIC = 0 MAL_INST_DW_PORT = 33141 [mal_inst1] mal_inst_name = DMDSC2 mal_host = 10.10.1.22 mal_port = 4234 MAL_INST_HOST = 192.168.1.22 MAL_INST_PORT = 5236 #dm.ini 中 port_num 保持一致 MAL_DW_PORT = 52141 MAL_LINK_MAGIC = 0 MAL_INST_DW_PORT = 33141 |
8 .13 配置监视器(节点 1、2均执行)
创建 dmcssm.ini 配置文件, 在第 3 台服务器部署,如果没有, 就在节点 1 和节点 2 都部署
8 .12.1 启动 D MCSSM 失败报错 - -- 服务未启动

报错提示: Wait CSS Control Node choosed failed, if dmcss has startuped and ini configured correctly, please wait a little more before execute
command.
注册 C SSM 监控服务 (节点 1、2均执行)
|
/dmdsc/dmdbms/script/root/dm_service_installer.sh -t dmcssm -cssm_ini /dmdsc/dmdbms/bin/dmcssm.ini -p Monitor |
手动开启 C SSM 服务
|
systemctl disable DmCSSMonitorServiceMonitor
systemctl status DmCSSMonitorServiceMonitor
systemctl start DmCSSMonitorServiceMonitor |
再次启动 D MCSSM 扔报错

8 .12.2 启动 D MCSSM 失败报错 - -- dmcssm.ini 配置错误
编辑 /dmdsc/dmdbms/bin/dmcssm.ini 文件,
|
CSSM_OGUID = 20251210 # 用于和 DMCSS 通信校验使用,和 DMDCR_CFG.INI 中的 DCR_OGUID 值保持一致
CSSM_CSS_IP = 10.10.1.21:9220 CSSM_CSS_IP = 10.10.1.22:9220 #集群中所有 DMCSS 所在机器的 IP 地址,以及 DMCSS 的监听端口,配置格式为“IP:PORT”的形式,其中 IP 和 PORT 分别对应 DMDCR_CFG.INI 中 DMCSS 节点的 DCR_EP_HOST 和 DCR_EP_PORT。
CSSM_LOG_PATH = /dmdsc/cssm_log #日志文件路径,日志文件命名方式为“dmcssm_年月日时分秒.log”,例如“dmcssm_20160614131123.log”。
CSSM_LOG_FILE_SIZE = 512 #单个日志文件大小,取值范围 16-2048,单位为 MB,缺省为 64MB。达到最大值后,会自动生成并切换到新的日志文件中。
CSSM_LOG_SPACE_LIMIT = 0 #日志总空间大小,取值 0 或者 256-4096,单位为 MB,缺省为 0,表示没有空间限制。如果达到设定的总空间限制,会自动删除创建时间最早的日志文件。
|
参照 DMDCR_CFG.INI 文件中配置的 DCR_OGUID, DCR_EP_HOST和DCR_EP_PORT值对应修改 dmcssm.ini 文件

再次启动 D MCSSM 成功


执行 help查看C SSM 可操作命令及注释

执行 show命令查看

8 .14 配置 dm_svc.conf文件
登录 D MDSC 需配置 dm_svc.conf文件,类似oracle的tnsnames.ora文件
|
TIME_ZONE=(480) LANGUAGE=(cn)
DMDSC=(192.168.1.21:5236,192.168.1.22:5236)
[DMDSC] SWITCH_TIMES = (60) SWITCH_INTERVAL = (200) |
8 .15 登录数据库
执行 disql SYSDBA/P@ssw0rd@DMDSC 登录数据库

至此D MDSC 环境搭建完成。
来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/70049443/viewspace-3109479/ ,如需转载,请注明出处,否则将追究法律责任。