
安装
准备安装介质
[dmdba@cjc-db-01 dm8]$ cd stage/[root@cjc-db-01 stage]# ls -lrthtotal 621M-rw-r--r--. 1 root root 621M Feb 24 2021 dm8_20201107_x86_rh7_64_ent_8.1.1.144.iso-rw-r--r--. 1 root root 54K Apr 22 2021 nmon-14i-1.gf.el6.x86_64.rpm
创建用户,组
[root@cjc-db-01 ~]# groupadd dinstall[root@cjc-db-01 ~]# useradd -g dinstall dmdba[root@cjc-db-01 ~]# id dmdbauid=1001(dmdba) gid=1001(dinstall) groups=1001(dinstall)[root@cjc-db-01 ~]# passwd dmdba
调整limit.conf
[root@cjc-db-01 security]# pwd/etc/security[root@cjc-db-01 security]# cp limits.conf limits.conf_20220917[root@cjc-db-01 security]# vi limits.confdmdba soft nofile 65536dmdba hard nofile 65536
创建目录、授权
[root@cjc-db-01 security]# chown -R dmdba.dinstall dm8
检查并关闭防火墙
[root@cjc-db-01 stage]# systemctl status firewalld.service
检查并关闭selinux
[root@cjc-db-01 stage]# more etc/selinux/config
挂载安装介质
[root@cjc-db-01 stage]# mount -t iso9660 -o loop dm8_20201107_x86_rh7_64_ent_8.1.1.144.iso mntmount: dev/loop0 is write-protected, mounting read-only[root@cjc-db-01 stage]# ls -lrth mnttotal 621M-r-xr-xr-x 1 root root 2.8M Nov 6 2020 DM8 Install.pdf-r-xr-xr-x 1 root root 618M Nov 6 2020 DMInstall.bin
配置用户环境变量
[root@host02 mnt]# echo $DISPLAYlocalhost:11.0
[dmdba@cjc-db-01 ~]$ vi .bash_profileexport PATHexport DISPLAY=:11.0export LD_LIBRARY_PATH="$LD_LIBRARY_PATH:/dm8/bin"export DM_HOME="/dm8"export PATH=$PATH:$DM_HOME/bin:$DM_HOME/tool
DM支持图形化安装和非图行化安装,今天介绍下图形话安装
xshell连接操作系统,配置图形。
[root@cjc-db-01 mnt]# xhost +access control disabled, clients can connect from any host[dmdba@cjc-db-01 ~]$ source .bash_profileexport DISPLAY=:11.0
安装xclock,测试图形
yum install xclockxclock

开始安装DM软件
[dmdba@cjc-db-01 mnt]$ ./DMInstall.binExtract install files.












执行脚本
[root@cjc-db-01 ~]# dm8/script/root/root_installer.shMove /dm8/bin/dm_svc.conf to /etcModify the files' mode of DM ServerCreate the DmAPService serviceCreated symlink from /etc/systemd/system/multi-user.target.wants/DmAPService.service to /usr/lib/systemd/system/DmAPService.service.Finished to create the service (DmAPService)Start the DmAPService service
初始化数据库
安装完成数据库软件,继续初始化数据库
或者通过dbca.sh命令启动图形初始化数据库
也可以通过dminit工具进行初始化数据库
注意:
这块命令和Oracle不同,Oracle是dbca,DM是dbca.sh。











默认时区-7:00,在修改时区时,发现冒号自动变成分号了,修改时最好只将-7改成8,不要动冒号,或者在文本写好+8:00后复制粘贴过来。








按提示配置并启动服务
[root@cjc-db-01 ~]# mv /dm8/bin/DmServiceDMSERVER.service /usr/lib/systemd/system/DmServiceDMSERVER.service
[root@cjc-db-01 ~]# systemctl enable DmServiceDMSERVER.serviceCreated symlink from /etc/systemd/system/multi-user.target.wants/DmServiceDMSERVER.service to /usr/lib/systemd/system/DmServiceDMSERVER.service.[root@cjc-db-01 ~]# systemctl start DmServiceDMSERVER.service


dminit初始化数据库
除了dbca.sh、图形初始化数据库以外,还支持dminit工具初始化。
这里尝试通过dminit工具创建第二个实例
指定数据库名、实例名、端口等
[dmdba@cjc-db-01 dm8]$ dminit path=/dm8/data DB_NAME=dameng02 instance_name=TEST port_num=5238
initdb V8db version: 0x7000bfile dm.key not found, use default license!License will expire in 14 day(s) on 2022-09-30log file path: /dm8/data/dameng02/dameng0201.loglog file path: /dm8/data/dameng02/dameng0202.logwrite to dir [/dm8/data/dameng02].create dm database success. 2022-09-16 22:48:04
查看帮助信息
[dmdba@cjc-db-01 ~]$ dminit helpinitdb V8db version: 0x7000bfile dm.key not found, use default license!License will expire on 2022-10-01Format: ./dminit KEYWORD=valueExample: ./dminit PATH=/public/dmdb/dmData PAGE_SIZE=16Keyword Explanation(default value)--------------------------------------------------------------------------------INI_FILE dm.ini pathPATH database pathCTL_PATH control file pathLOG_PATH log file pathEXTENT_SIZE extent size of data file(16), optional value: 16, 32, 64, unit: PAGEPAGE_SIZE page size(8), optional value: 4, 8, 16, 32, unit: KLOG_SIZE log file size(256), unit: M, range: 64M ~ 2GCASE_SENSITIVE whether case is sensitive(Y), optional value: Y/N or 1/0CHARSET/UNICODE_FLAG CHARSET(0), optional value:0[GB18030],1[UTF-8],2[EUC-KR]SEC_PRIV_MODE security privilege mode(0), optional value£º0[TRADITION], 1[BMJ], 2[EVAL]LENGTH_IN_CHAR whether LENGTH for VARCHAR is in characters(N), optional value: Y/N, 1/0SYSDBA_PWD set SYSDBA password(SYSDBA)SYSAUDITOR_PWD set SYSAUDITOR password(SYSAUDITOR)DB_NAME database name(DAMENG)INSTANCE_NAME instance name(DMSERVER)PORT_NUM listener port(5236)BUFFER System buffer size(100), unit: MTIME_ZONE set time zone(+08:00)PAGE_CHECK page check mode(0), optional value: 0/1/2EXTERNAL_CIPHER_NAME set default encrypt/decrypt algorithmEXTERNAL_HASH_NAME set default hash algorithmEXTERNAL_CRYPTO_NAME set crypto name to encrypt svr keyRLOG_ENC_FLAG whether encrypt redo log(N), optional value: Y/N, 1/0USBKEY_PIN set usbkey pinPAGE_ENC_SLICE_SIZE slice size for page encryption, optional value: 512, 4096, unit: ByteENCRYPT_NAME set algorithm for encrypt the whole databaseBLANK_PAD_MODE set blank padding mode(0), optional value:0/1SYSTEM_MIRROR_PATH mirror path of system data fileMAIN_MIRROR_PATH mirror path of main fileROLL_MIRROR_PATH mirror path of roll fileMAL_FLAG MAL_INI flag(0) in dm.iniARCH_FLAG ARCH_INI(0) flag in dm.iniMPP_FLAG MPP_INI(0) flag in dm.iniCONTROL control file path!AUTO_OVERWRITE whether overwrite all files with the same name(0) 0: no 1: part 2: allUSE_NEW_HASH whether use new hash algorithm for string. (default 1)DCP_MODE whether is DM CLUSTER PROXY mode(default 0)DCP_PORT_NUM in DCP mode, set dcp_port_numELOG_PATH set the path of log file recording the contents during initializationAP_PORT_NUM in ECS mode, AP listener port for cooperative workDFS_FLAG DFS_INI flag(0) in dm.iniDFS_PATH default path of db file when dfs_flag is trueDFS_HOST ip of ddfs(localhost)DFS_PORT port number of ddfs(3332)DFS_COPY_NUM copy num of dfs file(3)DFS_DB_NAME database name in ddfs(default same as DB_NAME)SHARE_FLAG database share flag in ddfs(default 0)REGION_MODE system tablespace datafile region policy in ddfs(default 0) 0: MICRO 1: GREATHUGE_WITH_DELTA Only support to create with delta huge table(default 1) 1: YES 0: NORLOG_GEN_FOR_HUGE whether to generate redo log for with delta huge table(default 0) 1: YES 0: NOPSEG_MGR_FLAG Only use manager segment to record trx info(default 0) 1: YES 0: NOHELP print help information
将新实例手动注册到服务
查看帮助信息
[root@cjc-db-01 mnt]# /dm8/script/root/dm_service_installer.sh --helpUsage: dm_service_installer.sh -t service_type [-p service_name_postfix] [-dm_ini dm_ini_file][-watcher_ini watcher_ini_file ] [-monitor_ini monitor_ini_file] [-cssm_ini cssm_ini_file][-dfs_ini dfs_ini_file] [-dcr_ini dcr_ini_file][-dss_ini dss_ini_file] [-drs_ini drs_ini_file] [-dras_ini dras_ini_file] [-dcs_ini dcs_ini_file] [-server server_info][-dmap_ini dmap_ini_file] [-m open|mount] [-y dependent_service] [-auto true|false]or dm_service_installer.sh [-s service_file_path]or dm_service_installer.sh -h
注册服务
[root@cjc-db-01 mnt]# /dm8/script/root/dm_service_installer.sh -t dmserver -p TEST -dm_ini /dm8/data/dameng02/dm.iniCreated symlink from /etc/systemd/system/multi-user.target.wants/DmServiceTEST.service to /usr/lib/systemd/system/DmServiceTEST.service.Finished to create the service (DmServiceTEST)
启动服务
[root@cjc-db-01 mnt]# systemctl start DmServiceTEST.service
连接数据库
当前启动了2个实例
[dmdba@cjc-db-01 ~]$ ps -ef|grep -i dmserverdmdba 19280 1 0 21:00 ? 00:00:12 /dm8/bin/dmserver /dm8/data/DAMENG/dm.ini -noconsoledmdba 21420 1 6 22:51 ? 00:00:05 /dm8/bin/dmserver
连接是通过端口区分不同实例
[root@cjc-db-01 mnt]# su - dmdbaLast login: Fri Sep 16 20:41:37 PDT 2022 on pts/1[dmdba@cjc-db-01 ~]$ disql sysdba/SYSDBA:5238Server[LOCALHOST:5238]:mode is normal, state is openlogin used time : 5.352(ms)disql V8SQL>
已经开启了自启动
[root@cjc-db-01 mnt]# systemctl list-unit-files |grep -i DMSDmServiceDMSERVER.service enabledDmServiceTEST.service enabled
配置连接字符串,类似oracle数据库的tnsname.ora
[dmdba@cjc-db-01 ~]$ cat /etc/dm_svc.confTIME_ZONE=(480)LANGUAGE=(en)cjc=(192.168.80.130:5236)
[dmdba@cjc-db-01 ~]$ disql sysdba/Dameng123@cjcServer[192.168.80.130:5236]:mode is normal, state is openlogin used time : 4.276(ms)disql V8SQL> exit
DM数据库启动和关闭
启动
服务方式启动
需要使用root用户启动
[root@cjc-db-01 mnt]# systemctl start DmServiceTEST.service
前台启动
使用dmdba用户启动
[dmdba@cjc-db-01 ~]$ dmserver /dm8/data/DAMENG/dm.ini
进程会挂在前台,执行ctrl+c后会自动关闭数据库
后台启动
[dmdba@cjc-db-01 tool]$ DmServiceDMSERVER statusDmServiceDMSERVER is stopped[dmdba@cjc-db-01 tool]$ DmServiceDMSERVER startStarting DmServiceDMSERVER: [ OK ]
dmservice方式
[dmdba@cjc-db-01 tool]$ pwd/dm8/tool[dmdba@cjc-db-01 tool]$ ./dmservice.sh

关闭
服务方式关闭
需要使用root用户
[root@cjc-db-01 mnt]# systemctl stop DmServiceTEST.service
前台关闭
使用dmdba用户
[dmdba@cjc-db-01 ~]$ dmserver /dm8/data/DAMENG/dm.ini
进程会挂在前台,执行ctrl+c后会自动关闭数据库
后台关闭
[dmdba@cjc-db-01 tool]$ DmServiceDMSERVER statusDmServiceDMSERVER (pid 25313) is running.[dmdba@cjc-db-01 tool]$ DmServiceDMSERVER stopStopping DmServiceDMSERVER: [ OK ][dmdba@cjc-db-01 tool]$ DmServiceDMSERVER statusDmServiceDMSERVER is stopped
dmservice方式
[dmdba@cjc-db-01 tool]$ pwd/dm8/tool[dmdba@cjc-db-01 tool]$ ./dmservice.sh

状态切换
DM数据库实例有以下几种状态
SHUTDOWNMOUNTOPENSUSPEND
注意和Oracle的区别,DM数据库实例没有NOMOUNT状态。
查看当前数据库实例状态
SQL> select status$ from v$instance;LINEID STATUS$---------- -------1 OPEN
注意:
状态列名和oracle不同,oracle的列名是status没有$。
将OPEN状态转换成MOUNT状态
SQL> alter database mount;executed successfullyused time: 00:00:01.778. Execute id is 0.SQL> select status$ from v$instance;LINEID STATUS$---------- -------1 MOUNT
这块操作和Oracle是有区别,Oracle数据库OPEN状态如果需要转换成MOUNT状态,需要先SHUTDOWN,在启动到MOUNT,而DM可以通过一条命名完成。
同理也可以转换到suspend状态。
SQL> alter database suspend;executed successfullyused time: 103.432(ms). Execute id is 0.SQL> alter database open;executed successfullyused time: 0.986(ms). Execute id is 0.
卸载
停服务
[root@cjc-db-01 ~]# systemctl stop DmServiceDMSERVER.service[root@cjc-db-01 ~]# su - dmdba
卸载
[dmdba@cjc-db-01 dm8]$ ./uninstall.sh -i
Whether to uninstall DM database(/dm8/)? (y/Y:Yes n/N:No):y[dmdba@cjc-db-01 dm8]$ ./uninstall.sh -iWhether to uninstall DM database(/dm8/)? (y/Y:Yes n/N:No):yWhether to deletet the dm_svc.conf file? (y/Y:Yes n/N:No):yUninstalling all database servicesUninstalling DmJobMonitorService database servicesUninstalling DmInstanceMonitorService database servicesUninstalling DmAuditMonitorService database servicesUninstalling DmAPService database servicesUninstalling DmServiceDMSERVER database servicesUninstall all database services completedUninstalling database directorysUninstalling bin directoryUninstall bin directory completedUninstalling bin2 directoryUninstall bin2 directory completedUninstalling include directoryUninstall include directory completedUninstalling desktop directoryUninstall desktop directory completedUninstalling doc directoryUninstall doc directory completedUninstalling drivers directoryUninstall drivers directory completedUninstalling jdk directoryUninstall jdk directory completedUninstalling jar directoryUninstall jar directory completedUninstalling samples directoryUninstall samples directory completedUninstalling script directoryUninstall script directory completedUninstalling tool directoryUninstall tool directory completedUninstalling web directoryUninstall web directory completedUninstalling uninstall directoryUninstall uninstall directory completedUninstalling license_en.txt fileUninstall license_en.txt file completedUninstalling license_zh.txt fileUninstall license_zh.txt file completedUninstalling uninstall.sh fileUninstall uninstall.sh file completedUninstall database directorys completedExecute the command by "root":/dm8/root_uninstaller.sh
执行脚本
执行脚本,删除服务
[root@cjc-db-01 ~]# /dm8/root_uninstaller.sh
Delete DmAPService serviceRemoved symlink /etc/systemd/system/multi-user.target.wants/DmAPService.service.Delete DmServiceDMSERVER serviceRemoved symlink /etc/systemd/system/multi-user.target.wants/DmServiceDMSERVER.service.Delete /etc/dm_svc.conf
删除用户、组、文件等
[root@cjc-db-01 ~]# userdel dmdba[root@cjc-db-01 ~]# groupdel dinstall





