(本人原创,首发在https://blog.csdn.net/m0_54619218/article/details/127612185)
在使用国产数据库DM8的过程中,学习、测试、部署的过程,对于熟悉Oracle 19c RAC的架构的工程师,搭建一套共存的环境, 使用相同的2个节点,使用绑定共享磁盘,都使用ASM ,都使用集群架构。 借鉴Oracle学习Dameng,同环境性能测试,部署测试,对比差异(两种ASM、两种数据库)等比异机更准确有效。
Kylin101
Kylin102
Dem
参照文档配置DEM服务器, 参考文档在DM8安装目录的web目录内
[dmdba@dem web]$ ls
dem_init.sql DEM.pdf demsdk dem.war readme.txt
[dmdba@dem bin]$ pwd
/dm/tomcat9/bin
[dmdba@dem bin]$ ls
bootstrap.jar ciphers.bat configtest.bat digest.sh setclasspath.sh startup.sh tool-wrapper.sh
catalina.bat ciphers.sh configtest.sh makebase.bat shutdown.bat tomcat-juli.jar version.bat
catalina.sh commons-daemon.jar daemon.sh makebase.sh shutdown.sh tomcat-native.tar.gz version.sh
catalina-tasks.xml commons-daemon-native.tar.gz digest.bat setclasspath.bat startup.bat tool-wrapper.bat
[dmdba@dem bin]$ ./startup.sh
Using CATALINA_BASE: /dm/tomcat9
Using CATALINA_HOME: /dm/tomcat9
Using CATALINA_TMPDIR: /dm/tomcat9/temp
Using JRE_HOME: /usr
Using CLASSPATH: /dm/tomcat9/bin/bootstrap.jar:/dm/tomcat9/bin/tomcat-juli.jar
Using CATALINA_OPTS:
Tomcat started.
登陆DEM的web页面
Kylin101和Kylin101创建dmdba账户和dinstall组。
Kylin101和Kylin101创建/dm目录。
Kylin101和Kylin101已经在安装Oracle 19C RAC时绑定共享磁盘。
[root@kylin101 ~]# lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sda 8:0 0 100G 0 disk
├─sda1 8:1 0 1G 0 part /boot
└─sda2 8:2 0 99G 0 part
├─klas-root 253:0 0 61.2G 0 lvm /
├─klas-swap 253:1 0 7.9G 0 lvm [SWAP]
└─klas-backup 253:2 0 29.9G 0 lvm
sdb 8:16 0 50G 0 disk
sdc 8:32 0 50G 0 disk
sdd 8:48 0 1.2G 0 disk
sde 8:64 0 50G 0 disk
sdf 8:80 0 10G 0 disk
sdg 8:96 0 300M 0 disk
sdh 8:112 0 300M 0 disk
sr0 11:0 1 1024M 0 rom
root@kylin101 dm]# cat /etc/udev/rules.d/99-oracle-asmdevices.rules
KERNEL=="sd*",ENV{DEVTYPE}=="disk",SUBSYSTEM=="block",PROGRAM=="/usr/lib/udev/scsi_id -g -u -d $devnode",RESULT=="1ATA_VBOX_HARDDISK_VBc9947097-05595839",RUN+="/bin/sh -c 'mknod /dev/asm-data01 b $major $minor; chown grid:asmadmin /dev/asm-data01; chmod 660 /dev/asm-data01'"
KERNEL=="sd*",ENV{DEVTYPE}=="disk",SUBSYSTEM=="block",PROGRAM=="/usr/lib/udev/scsi_id -g -u -d $devnode",RESULT=="1ATA_VBOX_HARDDISK_VBfb7b2fe3-ab101384",RUN+="/bin/sh -c 'mknod /dev/asm-data02 b $major $minor; chown grid:asmadmin /dev/asm-data02; chmod 660 /dev/asm-data02'"
KERNEL=="sd*",ENV{DEVTYPE}=="disk",SUBSYSTEM=="block",PROGRAM=="/usr/lib/udev/scsi_id -g -u -d $devnode",RESULT=="1ATA_VBOX_HARDDISK_VBeb6440e4-caa3b309",RUN+="/bin/sh -c 'mknod /dev/asm-ocr2 b $major $minor; chown grid:asmadmin /dev/asm-ocr2; chmod 660 /dev/asm-ocr2'"
KERNEL=="sd*",ENV{DEVTYPE}=="disk",SUBSYSTEM=="block",PROGRAM=="/usr/lib/udev/scsi_id -g -u -d $devnode",RESULT=="1ATA_VBOX_HARDDISK_VB661e9e75-f34401b2",RUN+="/bin/sh -c 'mkdir /dev/dmasm; chown dmdba:dinstall /dev/dmasm; mknod /dev/dmasm/dcr b $major $minor; chown dmdba:dinstall /dev/dmasm/dcr ; chmod 660 /dev/dmasm/dcr'"
KERNEL=="sd*",ENV{DEVTYPE}=="disk",SUBSYSTEM=="block",PROGRAM=="/usr/lib/udev/scsi_id -g -u -d $devnode",RESULT=="1ATA_VBOX_HARDDISK_VB64de2cb1-737887f3",RUN+="/bin/sh -c 'mkdir /dev/dmasm; chown dmdba:dinstall /dev/dmasm; mknod /dev/dmasm/vote b $major $minor; chown dmdba:dinstall /dev/dmasm/vote; chmod 660 /dev/dmasm/vote'"
KERNEL=="sd*",ENV{DEVTYPE}=="disk",SUBSYSTEM=="block",PROGRAM=="/usr/lib/udev/scsi_id -g -u -d $devnode",RESULT=="1ATA_VBOX_HARDDISK_VBce5500ab-9a704dbb",RUN+="/bin/sh -c 'mkdir /dev/dmasm; chown dmdba:dinstall /dev/dmasm; mknod /dev/dmasm/data001 b $major $minor; chown dmdba:dinstall /dev/dmasm/data001 ; chmod 660 /dev/dmasm/data001 '"
KERNEL=="sd*",ENV{DEVTYPE}=="disk",SUBSYSTEM=="block",PROGRAM=="/usr/lib/udev/scsi_id -g -u -d $devnode",RESULT=="1ATA_VBOX_HARDDISK_VB70b281d6-c884d55c",RUN+="/bin/sh -c 'mkdir /dev/dmasm; chown dmdba:dinstall /dev/dmasm; mknod /dev/dmasm/log001 b $major $minor; chown dmdba:dinstall /dev/dmasm/log001 ; chmod 660 /dev/dmasm/log001 '
[root@kylin101 ~]# ls -l /dev/asm*
brw-rw---- 1 root root 8, 16 Nov 1 10:45 /dev/asm-data01
brw-rw---- 1 root root 8, 32 Nov 1 10:45 /dev/asm-data02
brw-rw---- 1 root root 8, 48 Nov 1 10:45 /dev/asm-ocr2
[root@kylin101 ~]# ls -l /dev/dmasm/*
brw-rw---- 1 dmdba dinstall 8, 64 Nov 1 10:45 /dev/dmasm/data001
brw-rw---- 1 dmdba dinstall 8, 96 Nov 1 10:46 /dev/dmasm/dcr
brw-rw---- 1 dmdba dinstall 8, 80 Nov 1 10:45 /dev/dmasm/log001
brw-rw---- 1 dmdba dinstall 8, 112 Nov 1 10:45 /dev/dmasm/vote
Agent 软件在DEM的 webapps/dem/dmagent下
/dm/tomcat9/webapps/dem/dmagent
[root@dem dmagent]# ls
agent.ini lib log log4j.xml readme.pdf resources service service.bat service.sh ssl start.bat start.sh tmp upload
Kylin101和Kylin101只配置agent并启动,达梦8 由DEM推送安装 。
[root@kylin101 ~]# cd /dm
[root@kylin101 dm]# ls
dmagent dmbak dmdbms log
[root@kylin101 dm]# cd dmagent
[root@kylin101 dmagent]# ls
agent.ini +DMDATA lib log log4j.xml readme.pdf resources service service.bat service.sh ssl start.bat start.sh tmp upload
[root@kylin101 dmagent]# cat agent.ini
#general
id_policy = 0 #agent id generate policy, 0: mac & ip, 1: ip
center_url = http://192.168.100.168:8080/dem #center url location, eg: http://192.168.2.10:8080/dem
ip_list = [] #custom local ip list, auto collect if not config, example: [192.168.1.100, 192.168.2.100]
dm_bin_path = #dm bin path for jni call
upload_path = #path for temporarily uploading and downloading files(e.g. backupsets for deploy). It is suggested to hava much available space on this disk. Deafult value is agent_root/upload
collect_data_by_command = false #whether enable collect systeminfo data by operating system command, only available in Linux
deploy_umask = 0077 #set file mode creation mask in deployment function, only available in Linux(Unix)
#ap
[root@kylin101 dmagent]# ps -ef|grep agent
root 1887 1 1 10:45 ? 00:00:06 java -Xms64m -Xmx2048m -cp /dm/dmagent/lib/* -Dnoconsole=true -Ddameng.log.file=/dm/dmagent/log4j.xml -Dagent.home=/dm/dmagent -Dagent.pid.file=/dm/dmagent/service/DmAgentService.pid com.dameng.agent.Agent /dm/dmagent/agent.ini
确认两个节点识别并正常:
集群管理 选择创建集群 dc001da
集群 dc001da 配置信息 :
SC自动部署脚本执行推送:
DSC自动部署脚本执行完成 :
DSC加入监控
对象管理 选择创建 dc001da (Dem内manager功能)
select * from dba_users;
查明看Dameng 磁盘使用dmasmcmd:
[dmdba@kylin101 ~]$ dmasmcmd
DMASMCMD V8
ASM>listdisks /dev/dam
[code: -2191], Invalid file path[/dev/dam]
ASM>listdisks /dev/dmasm
[/dev/dmasm/dcr]: Used ASM disk, name:[DMASMvote], size:[300M], group_id:[125], disk_id:[0]
[/dev/dmasm/data001]: Used ASM disk, name:[DMASMdata0], size:[51199M], group_id:[1], disk_id:[0]
[/dev/dmasm/vote]: Used ASM disk, name:[DMASMdcr], size:[300M], group_id:[126], disk_id:[0]
[/dev/dmasm/log001]: Used ASM disk, name:[DMASMlog0], size:[10239M], group_id:[0], disk_id:[0]
Used time: 7.259(ms).
ASM>exit
达梦8 DMASCMD的命令使用
[dmdba@kylin101 ~]$ dmasmcmd
DMASMCMD V8
ASM>help
Format: create emptyfile file_path size(M) num
Usage: create emptyfile '/data/asmdisks/disk0.asm' size 100
Format: create asmdisk disk_path disk_name [size(M)]
Usage: create asmdisk '/data/asmdisks/disk0.asm' 'DATA0'
Usage: create asmdisk '/data/asmdisks/disk0.asm' 'DATA0' 100
Format: create dcrdisk disk_path disk_name [size(M)]
Usage: create dcrdisk '/data/asmdisks/disk0.asm' 'DATA0'
Usage: create dcrdisk '/data/asmdisks/disk0.asm' 'DATA0' 100
Format: create votedisk disk_path disk_name [size(M)]
Usage: create votedisk '/data/asmdisks/disk0.asm' 'DATA0'
Usage: create votedisk '/data/asmdisks/disk0.asm' 'DATA0' 100
Format: init dcrdisk disk_path from ini_path identified by password
Usage: init dcrdisk '/data/asmdisks/disk0.asm' from '/data/dmdcr_cfg.ini' identified by 'aaabbb'
Format: init votedisk disk_path from ini_path
Usage: init votedisk '/data/asmdisks/disk0.asm' from '/data/dmdcr_cfg.ini'
Format: init ddfsdcr ddfs_dcr_path from disk_path
Usage: init ddfsdcr '$/dameng/dsc/asmdisks/disk0.asm' from '/data/asmdisks/disk0.asm'
Format: init ddfsvtd ddfs_vtd_path from disk_path
Usage: init ddfsvtd '$/dameng/dsc/asmdisks/disk0.asm' from '/data/asmdisks/disk0.asm'
Format: export dcrdisk disk_path to ini_path
Usage: export dcrdisk '/data/asmdisks/disk0.asm' to '/data/dmdcr_cfg.ini'
Format: import dcrdisk ini_path to disk_path
Usage: import dcrdisk '/data/dmdcr_cfg.ini' to '/data/asmdisks/disk0.asm'
Format: extend dcrdisk disk_path from ini_path
Usage: extend dcrdisk '/data/asmdisks/disk0.asm' from '/data/dmdcr_cfg.ini'
Format: check dcrdisk disk_path
Usage: check dcrdisk '/data/asmdisks/disk0.asm'
Format: clear dcrdisk err_ep_arr disk_path group_name
Usage: clear dcrdisk err_ep_arr '/data/asmdisks/disk0.asm' 'GRP_RAC'
Format: listdisks path
Usage: listdisks '/data/asmdisks/'
查明看Dameng 磁盘组使用dmasmtool :
[dmdba@kylin101 ~]$ dmasmtool DCR_INI=/dm/dmdbms/dc001da/data/dc001da01/dmdcr.ini
DMASMTOOL V8
ASM>lsdg
total 4 groups......
1 disk_group:
name: DMLOG
id: 0
au_size: 1.00 MB
extent_size: 4
total_size: 10.00 GB
free_size: 8.99 GB
total_file_num: 6
2 disk_group:
name: DMDATA
id: 1
au_size: 1.00 MB
extent_size: 4
total_size: 50.00 GB
free_size: 49.43 GB
total_file_num: 39
3 disk_group:
name: VOTE
id: 125
au_size: 1.00 MB
extent_size: 4
total_size: 300.00 MB
free_size: 276.00 MB
total_file_num: 2
4 disk_group:
name: DCR
id: 126
au_size: 1.00 MB
extent_size: 4
total_size: 300.00 MB
free_size: 276.00 MB
total_file_num: 2
Used time: 4.939(ms).
ASM>df
group DMLOG include 1 disks......
NO.1 disk :
name: DMASMlog0
path: /dev/dmasm/log001
size: 10.00 GB
create_time: 2022-10-31 15:44:45
modify_time: 2022-10-31 15:44:45
belong group: DMLOG
group DMDATA include 1 disks......
NO.1 disk :
name: DMASMdata0
path: /dev/dmasm/data001
size: 50.00 GB
create_time: 2022-10-31 15:44:45
modify_time: 2022-10-31 15:44:45
belong group: DMDATA
group VOTE include 1 disks......
NO.1 disk :
name: DMASMvote
path: /dev/dmasm/dcr
size: 300.00 MB
create_time: 2022-10-31 15:44:04
modify_time: 2022-10-31 15:44:04
belong group: VOTE
group DCR include 1 disks......
NO.1 disk :
name: DMASMdcr
path: /dev/dmasm/vote
size: 300.00 MB
create_time: 2022-10-31 15:43:54
modify_time: 2022-10-31 15:43:54
belong group: DCR
total 0 disks unused......
Used time: 8.212(ms).
ASM>
达梦8 DMASMTOOL的命令使用:
[dmdba@kylin101 ~]$ dmasmtool DCR_INI=/dm/dmdbms/dc001da/data/dc001da01/dmdcr.ini
DMASMTOOL V8
ASM>help
Format: create diskgroup name asmdisk file_path
Usage: create diskgroup 'DMDATA' asmdisk '/home/data/asmdisks/disk0.asm'
Format: alter diskgroup name add asmdisk file_path
Usage: alter diskgroup 'DMDATA' add asmdisk '/home/data/asmdisks/disk1.asm'
Format: drop diskgroup name
Usage: drop diskgroup 'DMDATA'
Format: create asmfile file_path size num(M)
Usage: create asmfile '+DMDATA/sample.dta' size 20
Format: alter asmfile file_path extend to num(M)
Usage: alter asmfile '+DMDATA/sample.dta' extend to 20
Format: alter asmfile file_path truncate to num(M)
Usage: alter asmfile '+DMDATA/sample.dta' truncate to 20
Format: delete asmfile file_path
Usage: delete asmfile '+DMDATA/sample.dta'
Format: spool file_path [create|replace|append]
Usage: spool /home/data/asmdisks/spool.txt
Format: spool off
Usage: spool off
Format: cd [path]
Usage: cd +DMDATA/test
Format: cp [-rf] src_file_path dst_file_path
Usage: cp '+DMDATA/a/sample.dta' '+DMDATA/a/b.dta'
cp -r '+DMDATA/a/newfile.dat' '+DMDATA/b'
cp -f '+DMDATA/a/*' '+DMDATA/c'
Format: rm [-f] file_path
rm -r[f] directories
Usage: rm '+DMDATA/a/sample.dta'
rm -r '+DMDATA/a/'
Format: mkdir [-p] dir_path
Usage: mkdir '+DMDATA/a'
mkdir -p '+DMDATA/a'
Format: find path file_name
Usage: find +DMDATA/a 'sample.dta'
Format: ls [-lr] [dir_path]
Usage: ls
ls -l
ls -r b*
Format: df
Usage: df
Format: pwd
Usage: pwd
Format: lsdg
Usage: lsdg
Format: lsdsk
Usage: lsdsk
Format: lsattr
Usage: lsattr
Format: lsall
Usage: lsall
Format: password
Usage: password
Format: iotest
Usage: iotest
集群管理 选择集群搭建 dc001da双击
选择回滚所有任务
回滚所有任务脚本结束:
首发网址 ttps://blog.csdn.net/m0_54619218/article/details/127612185
文章
阅读量
获赞