一、安装前准备
本次选择使用VMware安装 rhel-server-7.9-x86作为操作系统,信息如下
hostname ip CPU os databaserheldm 192.168.1.100 x86_64 rhel7.9 DM8
新建 dmdba 用户
## 创建用户所在的组groupadd dinstall -g 2001## 创建用户useradd -G dinstall -m -d home/dmdba -s bin/bash -u 2001 dmdba## 修改用户密码passwd dmdba或者echo "dameng" |passwd --stdin dmdba
修改文件打开最大数
在 Linux、Solaris、AIX 和 HP-UNIX 等系统中,操作系统默认会对程序使用资源进行限制。如果不取消对应的限制,则数据库的性能将会受到影响。
永久修改和临时修改。
重启服务器后永久生效。
使用 root 用户打开 /etc/security/limits.conf
文件进行修改,命令如下:
vi etc/security/limits.confdmdba soft nice 0dmdba hard nice 0dmdba soft as unlimiteddmdba hard as unlimiteddmdba soft fsize unlimiteddmdba hard fsize unlimiteddmdba soft nproc 65536dmdba hard nproc 65536dmdba soft nofile 65536dmdba hard nofile 65536dmdba soft core unlimiteddmdba hard core unlimiteddmdba soft data unlimiteddmdba hard data unlimited
目录规划
1.可根据实际需求规划安装目录,本示例使用默认配置 DM 数据库安装在 home/dmdba 文件夹下。
2.规划创建实例保存目录、归档保存目录、备份保存目录。
##实例保存目录mkdir -p dmdata/data##归档保存目录mkdir -p dmdata/arch##备份保存目录mkdir -p dmdata/dmbak
使用 root 用户建立文件夹,待 dmdba 用户建立完成后需将文件所有者更改为 dmdba 用户,否则无法安装到该目录下
修改目录权限
将新建的路径目录权限的用户修改为 dmdba,用户组修改为 dinstall
chown -R dmdba:dinstall dmdata/datachown -R dmdba:dinstall dmdata/archchown -R dmdba:dinstall dmdata/dmbakchmod -R 755 dmdata/datachmod -R 755 dmdata/archchmod -R 755 dmdata/dmbak
DM 数据库在 Linux 环境下支持命令行安装和图形化安装,本篇介绍命令行安装
二、挂载镜像
切换到 root 用户,将 DM 数据库的 iso 安装包保存在任意位置,例如 opt 目录下,执行如下命令挂载镜像:
cd /optunzip -q opt/dm8_20240920_x86_rh7_64.zipmount -o loop dm8_20240920_x86_rh7_64.iso opt

三、命令行安装
切换至 dmdba 用户下,在 opt 目录下使用命令行安装数据库程序,依次执行以下命令安装 DM 数据库。


[root@rheldm soft]# su - dmdbaLast login: Wed Nov 20 15:44:13 CST 2024 on pts/0[dmdba@rheldm ~]$[dmdba@rheldm ~]$[dmdba@rheldm ~]$[dmdba@rheldm ~]$ cd opt[dmdba@rheldm opt]$ ./DMInstall.bin -i安装语言:[1]: 简体中文[2]: English请选择安装语言 [1]: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) 基里巴斯请选择时区 [21]:21安装类型:1 典型安装2 服务器3 客户端4 自定义请选择安装类型的数字序号 [1 典型安装]:1所需空间: 1983M请选择安装目录 [/home/dmdba/dmdbms]:/dm8目录(/dm8)下不为空,请选择其他目录。请选择安装目录 [/home/dmdba/dmdbms]:可用空间: 86G是否确认安装路径(/home/dmdba/dmdbms)? (Y/y:是 N/n:否) [Y/y]:y安装前小结安装位置: /home/dmdba/dmdbms所需空间: 1983M可用空间: 86G版本信息:有效日期:安装类型: 典型安装是否确认安装? (Y/y:是 N/n:否):y2024-11-20 15:56:50[INFO] 安装 基础 模块...2024-11-20 15:56:50[INFO] 安装达梦数据库...2024-11-20 15:56:55[INFO] 安装 服务器 模块...2024-11-20 15:56:55[INFO] 安装 客户端 模块...2024-11-20 15:56:57[INFO] 安装 驱动 模块...2024-11-20 15:56:59[INFO] 安装 手册 模块...2024-11-20 15:56:59[INFO] 安装 服务 模块...2024-11-20 15:56:59[INFO] 移动日志文件。2024-11-20 15:56:59[INFO] 安装达梦数据库完成。请以root系统用户执行命令:/home/dmdba/dmdbms/script/root/root_installer.sh安装结束[dmdba@rheldm opt]$
root 用户执行
[root@rheldm ~]# /home/dmdba/dmdbms/script/root/root_installer.sh移动 /home/dmdba/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.service.创建服务(DmAPService)完成启动DmAPService服务[root@rheldm ~]#
达梦数据库软件安装完成。
命令行配置实例
[dmdba@rheldm bin]$ pwd/home/dmdba/dmdbms/bin[dmdba@rheldm bin]$ ./dminit helpinitdb V8db version: 0x7000cfile dm.key not found, use default license!License will expire on 2025-09-19version: 03134284294-20240919-243448-20119 Pack1格式: ./dminit KEYWORD=value例程: ./dminit PATH=/public/dmdb/dmData PAGE_SIZE=16关键字 说明(默认值)--------------------------------------------------------------------------------INI_FILE 初始化文件dm.ini存放的路径PATH 初始数据库存放的路径CTL_PATH 控制文件路径LOG_PATH 日志文件路径EXTENT_SIZE 数据文件使用的簇大小(16),可选值:16, 32, 64,单位:页PAGE_SIZE 数据页大小(8),可选值:4, 8, 16, 32,单位:KLOG_SIZE 日志文件大小(2048),单位为:M,范围为:256M ~ 8GCASE_SENSITIVE 大小敏感(Y),可选值:Y/N,1/0CHARSET/UNICODE_FLAG 字符集(0),可选值:0[GB18030],1[UTF-8],2[EUC-KR]SEC_PRIV_MODE 权限管理模式(0),可选值:0[TRADITION],1[BMJ],2[EVAL],3[BAIST]SYSDBA_PWD 设置SYSDBA密码(SYSDBA)SYSAUDITOR_PWD 设置SYSAUDITOR密码(SYSAUDITOR)DB_NAME 数据库名(DAMENG)INSTANCE_NAME 实例名(DMSERVER)PORT_NUM 监听端口号(5236)BUFFER 系统缓存大小(8000),单位MTIME_ZONE 设置时区(+08:00)PAGE_CHECK 页检查模式(3),可选值:0/1/2/3PAGE_HASH_NAME 设置页检查HASH算法EXTERNAL_CIPHER_NAME 设置默认加密算法EXTERNAL_HASH_NAME 设置默认HASH算法EXTERNAL_CRYPTO_NAME 设置根密钥加密引擎RLOG_ENCRYPT_NAME 设置日志文件加密算法,若未设置,则不加密RLOG_POSTFIX_NAME 设置日志文件后缀名,长度不超过10。默认为log,例如DAMENG01.logUSBKEY_PIN 设置USBKEY PINPAGE_ENC_SLICE_SIZE 设置页加密分片大小,可选值:0、512、4096,单位:ByteENCRYPT_NAME 设置全库加密算法BLANK_PAD_MODE 设置空格填充模式(0),可选值:0/1SYSTEM_MIRROR_PATH SYSTEM数据文件镜像路径MAIN_MIRROR_PATH MAIN数据文件镜像ROLL_MIRROR_PATH 回滚文件镜像路径MAL_FLAG 初始化时设置dm.ini中的MAL_INI(0)ARCH_FLAG 初始化时设置dm.ini中的ARCH_INI(0)MPP_FLAG Mpp系统内的库初始化时设置dm.ini中的mpp_ini(0)CONTROL 初始化配置文件(配置文件格式见系统管理员手册)AUTO_OVERWRITE 是否覆盖所有同名文件(0) 0:不覆盖 1:部分覆盖 2:完全覆盖USE_NEW_HASH 是否使用改进的字符类型HASH算法(1)ELOG_PATH 指定初始化过程中生成的日志文件所在路径AP_PORT_NUM 分布式环境下协同工作的监听端口HUGE_WITH_DELTA 是否仅支持创建事务型HUGE表(1) 1:是 0:否RLOG_GEN_FOR_HUGE 是否生成HUGE表REDO日志(1) 1:是 0:否PSEG_MGR_FLAG 是否仅使用管理段记录事务信息(0) 1:是 0:否CHAR_FIX_STORAGE CHAR是否按定长存储(N),可选值:Y/N,1/0SQL_LOG_FORBID 是否禁止打开SQL日志(N),可选值:Y/N,1/0DPC_MODE 指定DPC集群中的实例角色(0) 0:无 1:MP 2:BP 3:SP,取值1/2/3时也可以用MP/BP/SP代替USE_DB_NAME 路径是否拼接DB_NAME(1) 1:是 0:否MAIN_DBF_PATH MAIN数据文件存放路径SYSTEM_DBF_PATH SYSTEM数据文件存放路径ROLL_DBF_PATH ROLL数据文件存放路径TEMP_DBF_PATH TEMP数据文件存放路径ENC_TYPE 数据库内部加解密使用的加密接口类型(1), 可选值: 1: 优先使用EVP类型 0: 不启用EVP类型HELP 打印帮助信息[dmdba@rheldm ~]$
示例:
[dmdba@rheldm bin]$ /home/dmdba/dmdbms/bin/dminit path=/dm8 extent_size=32 page_size=32 charset=1 case_sensitive=1 log_size=2048 DB_NAME=DAMENG INSTANCE_NAME=DMSERVER PORT_NUM=5236 SYSDBA_PWD=DAMENG001

dminit 方式创建数据库不会自动注册数据库服务(DM 数据库配置助手方式默认自动注册数据库服务),所以不能以服务方式启动数据库,如果要以服务方式启动,则需要注册数据库服务。
注册数据库服务
使用 root 用户进入数据库安装目录的 /script/root 下注册服务
[root@rheldm ~]# /home/dmdba/dmdbms/script/root/dm_service_installer.sh -t dmserver -dm_ini /dm8/DAMENG/dm.ini -p DMSERVERCreated symlink from /etc/systemd/system/multi-user.target.wants/DmServiceDMSERVER.service to /usr/lib/systemd/system/DmServiceDMSERVER.service.创建服务(DmServiceDMSERVER)完成[root@rheldm ~]#[root@rheldm ~]# systemctl enable DmServiceDMSERVER.service[root@rheldm ~]# systemctl start DmServiceDMSERVER.service[root@rheldm ~]# systemctl status DmServiceDMSERVER.service

root启停数据库
## 查看当前数据库服务状态[root@rheldm ~]# systemctl status DmServiceDMSERVER.service## 关闭数据库[root@rheldm ~]# systemctl stop DmServiceDMSERVER.service## 打开数据库[root@rheldm ~]# systemctl start DmServiceDMSERVER.service## 重启数据库[root@rheldm ~]# systemctl restart DmServiceDMSERVER.service
DMDBA用户启停数据库
[dmdba@rheldm bin]$ vim ~/.bash_profile[dmdba@rheldm bin]$ cat ~/.bash_profile# .bash_profile# Get the aliases and functionsif [ -f ~/.bashrc ]; then. ~/.bashrcfi# User specific environment and startup programsPATH=$PATH:$HOME/.local/bin:$HOME/binexport LANG=zh_CN.UTF8export LD_LIBRARY_PATH="$LD_LIBRARY_PATH:/home/dmdba/dmdbms/bin"export DM_HOME="/home/dmdba/dmdbms"export PATH=$DM_HOME/bin:$PATH:$HOME/bin[dmdba@rheldm bin]$## 查看当前数据库服务状态[dmdba@rheldm bin]$ DmServiceDMSERVER statusDmServiceDMSERVER (pid 59950) is running.## 打开数据库[dmdba@rheldm bin]$ DmServiceDMSERVER start## 关闭数据库[dmdba@rheldm bin]$ DmServiceDMSERVER stop## 重启数据库[dmdba@rheldm bin]$ DmServiceDMSERVER restart
连接访问数据库
使用 disql 命令连接达梦数据库:
[dmdba@rheldm bin]$ disql SYSDBA/DAMENG001服务器[LOCALHOST:5236]:处于普通打开状态登录使用时间 : 2.540(ms)disql V8SQL>select name from V$database;select instance_name from v$instance;select b.tablespace_name, b.file_name, b.bytes/1024/1024 size_m from dba_data_files b union all select 'RLOG', a.path, a.rlog_size/1024/1024 from v$rlogfile a;

至此安装工作结束,可以正常连接使用了。
参考链接:https://eco.dameng.com/document/dm/zh-cn/start/dm-install-linux.html




