当前位置: 首页 > news >正文

Linux 命令行安装达梦数据库

达梦官方不提供 docker 镜像了,由于要开发国产化项目,因此只能暂时在 Linux 服务器上直接安装。如果 Linux 操作系统带有图形化界面的话,安装起来很简单,参考官网即可,这里不再赘述。有的客户现场提供的 Linux 服务器不带图形化界面,因此只能使用命令行进行安装。本篇博客介绍在无图形化界面的 Linux 操作系统上使用命令行安装的过程,方便大家少走弯路。


一、下载安装包

首先访问达梦官网下载安装包,官网地址是:https://eco.dameng.com/download/

我的测试虚拟机使用的还是 CentOS7,电脑 cpu 是 x86,因此我下载 rhel7,文件名为:dm8_20250506_x86_rh7_64.zip

01

解压安装包 dm8_20250506_x86_rh7_64.zip 后,得到 dm8_20250506_x86_rh7_64.iso

接着解压 dm8_20250506_x86_rh7_64.iso 得到 DMInstall.bin 文件

将 DMInstall.bin 文件拷贝到 /home 目录下,使用命令 chmod 755 DMInstall.bin 赋予执行权限


二、安装前的准备

达梦数据库要求使用 dmdba 账户运行,该用户属于 dinstall 组,因此需要提前创建用户和用户组

# 创建用户组
groupadd -g 12349 dinstall
# 创建用户
useradd -u 12345 -g dinstall -m -d /home/dmdba -s /bin/bash dmdba
# 设置用户密码
passwd dmdba

编辑 /etc/security/limits.conf 文件,确保 open files 的数量至少是 65536,在文件末尾添加如下文本(每行有 4 列):

* soft nofile 65536
* hard nofile 65536
* soft nproc 65536
* hard nproc 65536

保存修改后,运行命令 init 6 重启服务器操作系统。然后使用命令 ulimit -a 查看修改结果:

02


三、安装达梦8数据库

建议切换到 dmdba 用户进行安装,因为达梦数据库要求使用 dmdba 运行

# 切换成 dmdba 用户
su dmdba
# 进入 /home 目录,之前我们已经将【达梦安装包】DMInstall.bin 拷贝到 /home 目录并赋予了 755 权限
cd /home
# 使用命令行安装达梦数据库
./DMInstall.bin -i

03

选择安装语言,我选择 1 简体中文,其实安装成英文也没问题,只要后面配置字符集为 UTF-8,就可以存储任何字符。

由于我只是开发使用,没有 license,因此这里就不输入 Key 文件路径了,这里输入 n

04

接着设置时区,这里选择中国标准时间,也就是东八区的时间,这里选择 21

05

安装类型,如果选择【典型安装】,则会安装所有功能。

由于达梦数据库安装在服务器,且无可视化界面,因此我只安装服务端,这里我选择 2

由于使用 dmdba 用户进行安装,默认安装路径是 /home/dmdba/dmdbms ,这里就使用这个路径,最后输入 y 确认安装

06

安装完成后,使用命令 su 切换成 root 用户,运行脚本即可:

# 切换为 root 用户,输入正确的 root 密码,即可切换成功
su
# 执行脚本
sh /home/dmdba/dmdbms/script/root/root_installer.sh

07

接下来,我们需要初始化数据库实例:

# 进入达梦安装目录下的 bin 目录中
cd /home/dmdba/dmdbms/bin
# 初始化数据库实例
./dminit path=/home/dmdba/dmdbms/data PAGE_SIZE=16 EXTENT_SIZE=16 CASE_SENSITIVE=N CHARSET=1 DB_NAME=DAMENG INSTANCE_NAME=DMSERVER PORT_NUM=5236 SYSDBA_PWD=Admin@123 SYSAUDITOR_PWD=Admin@123

使用 dminit 命令初始化数据库实例,常用参数如下所示:

参数名 描述
PATH 初始数据库存放的路径,我这里存放在安装目录下的 data 目录中,即 /home/dmdba/dmdbms/data
PAGE_SIZE 数据页大小,可选值:4, 8, 16, 32,单位:K,默认是 8K
EXTENT_SIZE 数据文件使用的簇大小,可选值:16, 32, 64,单位:页,默认是 16页
CASE_SENSITIVE 大小写敏感,可选值:Y/N,1/0,默认是 Y,我建议设置为 N(设置为大小写不敏感)
CHARSET 字符集,可选值:0[GB18030],1[UTF-8],2[EUC-KR],默认是 0 ,建议设置为 1(使用 UTF-8 字符集)
DB_NAME 数据库名,默认是 DAMENG
INSTANCE_NAME 实例名,默认是 DMSERVER
PORT_NUM 监听端口号,默认是 5236
SYSDBA_PWD 设置 SYSDBA 用户密码
SYSAUDITOR_PWD 设置 SYSAUDITOR 用户密码

08

由于达梦数据库安装目录是 /home/dmdba/dmdbms/ 目录,因此脚本目录是 /home/dmdba/dmdbms/script/root/

# 进入脚本目录
cd /home/dmdba/dmdbms/script/root/
# 运行脚本,创建数据库实例服务
./dm_service_installer.sh -t dmserver -dm_ini /home/dmdba/dmdbms/data/DAMENG/dm.ini -p DMSERVER

使用 dm_service_installer.sh 脚本,常用参数如下:

参数 描述
-t 注册服务类型,支持一下服务类型:dmap、dmamon、dmserver、dmwatcher、dmmonitor、dmasmsvr、dmasmsvrm、dmcss、dmcssm
-dm_ini 指定服务所需要的 dm.ini 文件路径
-p 指定服务名后缀,生成的操作系统服务名为“服务脚本模板名称 + 服务名后缀”。此参数只针对 dmserver、dmwatcher、dmmonitor、dmasmsvr、dmasmsvrm、dmcss、dmcssm 服务脚本生效

10

由于达梦数据库服务,必须使用 dmdba 用户运行,而我们上面都是以 root 身份执行的脚本,因此需要将达梦存放数据目录(/home/dmdba/dmdbms/data)的所属用户设置为 dmdba,用户组设置为 dinstall,否则启动服务时会报错,提示权限被拒绝。我在这个坑耗费了不少时间。

# 将达梦数据库的数据目录,从 root:root 设置为 dmdba:dinstall
chown dmdba:dinstall -R /home/dmdba/dmdbms/data

最后启动服务即可,由于服务已经设置为开机自启动,因此这里只需要启动服务即可:

# 启动服务
systemctl start DmServiceDMSERVER
# 查看服务状态
systemctl status DmServiceDMSERVER

如果想要卸载服务,需要先停掉服务,然后执行达梦安装目录下的 uninstall.,sh 脚本即可,非常简单,这里就不再赘述

# 卸载服务,先停掉服务
systemctl stop DmServiceDMSERVER
# 我的达梦数据库安装在 /home/dbdmdba/dmdbms 目录中,因此运行其下面的 uninstall.sh 脚本,按照提示输入 y 即可
sh /home/dbdmdba/dmdbms/uninstall.sh -i

四、使用客户端连接测试

访问官方网下载 windows 版的达梦安装包 https://eco.dameng.com/download/

11

下载后的文件名为 dm8_20250430_x86_win_64.zip,解压缩后得到 dm8_20250430_x86_win_64.iso 文件

继续解压缩 dm8_20250430_x86_win_64.iso 文件到文件夹中,点击文件夹中的 setup.exe 进行安装

12

安装组件选择【客户端安装】即可,我们使用客户端连接 linux 上安装的服务端

安装完成后,启动【DM管理工具】,由于我的 linux 服务器 ip 地址为 192.168.136.128,在上面的安装过程中,设置的 SYSDBA 的密码为 Admin@123,因此输入对应信息后,点击【测试连接】即可验证是否能否连接成功

13

连接成功后,我们可以在客户端底部,或者运行 sql 语句查看达梦数据库的有效期:

14


http://www.hskmm.com/?act=detail&tid=24441

相关文章:

  • Google开源Tunix:JAX生态的LLM微调方案来了
  • 实用指南:Matlab通过GUI实现点云的快速全局配准(FGR)
  • 『OI 回忆录』停课有感
  • 『回忆录』初三第三学月
  • 完整教程:MySQL 5.7 主主复制 + Keepalived 高可用配置实例
  • 题解:P14074 [GESP202509 五级] 有趣的数字和
  • 解码Huffman 编码与 Huffman 树
  • 『回忆录』初三来高中的半学期
  • 10.1 容器云部署准备(一) - 实践
  • 关于缓冲区以及输出方式
  • 漏洞赏金计划的困境:i915漏洞与ChromeOS、Intel赏金项目剖析
  • RippleNet: Propagating User Preferences on the Knowledge Graph for Recommender Systems
  • 特地拎出来的总结
  • 2025异型件厂家推荐:邯郸市烁燊紧固件,广泛应用于建筑、桥梁、机械、电力、交通等诸多领域
  • Allow or block media autoplay in Firefox
  • [WC2018] 即时战略
  • 实用指南:Unity学习之C#的反射机制
  • HDF5文件 ——之三
  • 代码随想录算法训练营|Day 25
  • 深入解析:SAE J3072-2024插电式电动汽车(PEV)中的车载逆变器系统安全标准介绍
  • 冷僻模板整理
  • 实用指南:gitlab-runner 再次实践中理解和学习
  • 2025年7月28日当周关键漏洞汇总分析
  • C# 与 C/C++ 互操作
  • 【自然语言处理】文本规范化知识点梳理与习题总结 - 教程
  • 邮票收集问题正推证明
  • 2025多校冲刺CSP模拟赛2 2025.10.4 模拟炸
  • 算法乱谈
  • 2025 年 9 月习题集
  • C# 代码规范