本次操作依然在VMware环境下进行操作,如果使用Macbook安装Linux系统时,需要注意区分Inter版和芯片版,架构支持不同
由于本机为Macbook air Inter版,选用的Linux为ubuntu-22.04.5,对应的达梦安装包为dm8_20260428_x86_Ubuntu22_64
本篇内容包含本人安装时遇到的问题,选了一部分供大家参考
首先,需要创建一个专门的系统用户来安装和管理数据库,该步骤需要在root下进行
# 1. 创建用户组
groupadd dinstall
# 2. 创建用户 dmdba,并加入 dinstall 组
useradd -g dinstall -m -d /home/dmdba -s /bin/bash dmdba
# 3. 为 dmdba 用户设置密码(按提示输入两次密码)
passwd dmdba
首先将在macbook下载好对应的安装文件,然后在Macbook和Linux系统之间建立一个共享文件夹,建议这个文件夹命名为英文,以防出现不方便打出中文或乱码的情况,在文件夹下再存放好一个包含安装文件的文件夹,如图所示:
VMware 上的共享文件夹设置(这个dm8是指最上级的dm8文件夹)
为了方便操作,我选择使用使用cp命令将该文件复制到本地
# 复制 /mnt/hgfs/dm8/dm8/ 下的所有内容到本地安装目录
cp -r /mnt/hgfs/dm8/dm8/* /dm8/install_files/
可以检验一下是否移动成功
ls -l /dm8/install_files/
如图可见移动结果,是三个文件:
如果你的安装文件是 .iso 格式,需要先挂载
exit # 退出 dmdba,回到 root 用户
mkdir -p /mnt/dm8_iso
mount -o loop /dm8/install_files/dm8_20260428_x86_Ubuntu22_64.iso /mnt/dm8_iso
验证挂载是否成功:
ls -l /mnt/dm8_iso/
应该能看到 DMInstall.bin 文件
su - dmdba
cd /mnt/dm8_iso
./DMInstall.bin -i
就可以看到选择语言的命令,选择1
*但此处我犯了一个错误,linux虚拟机在安装完图形化界面后,所剩的空间不足,对此可以有两种处理方式:
这里选择了2的方法,多增加了10G,注意,如果没有关机这个进度条是无法拖动的
之后可以正常开机重新进行刚刚的安装操作
语言选择:1
是否输入key文件路径:N
是否设置时区:21
安装类型:1
选择安装目录:可以直接回车
确认:Y
安装小结确认:Y
等待一下,就安装成功了,时间不会很长
因为安装目录是/home/dmdba/dmdbms
# 以 root 用户执行
/home/dmdba/dmdbms/script/root/root_installer.sh
初始化一个实例名为DMOA,库名为DMOA,端口号为5234,页大小为16,字符集为gb18030,大小写敏感为是的库。2)使用disql新建一个名称为DMDBA的用户,设置密码为dameng_dba,并授予dba角色权限.
切换到 dmdba 用户,进入安装目录的 bin 文件夹:
su - dmdba
cd /home/dmdba/dmdbms/bin
执行初始化命令,注意参数:
./dminit PATH=/dm8/data \ DB_NAME=DMOA \ INSTANCE_NAME=DMOA \ PORT_NUM=5234 \ PAGE_SIZE=16 \ CHARSET=0 \ CASE_SENSITIVE=1 \ SYSDBA_PWD=Dameng123456 \ SYSAUDITOR_PWD=Dameng123456
PATH:数据文件存放目录(/dm8/data)
DB_NAME:数据库名 DMOA
INSTANCE_NAME:实例名 DMOA
PORT_NUM:端口 5234
PAGE_SIZE:页大小 16(单位 KB)
CHARSET=0:字符集 GB18030
CASE_SENSITIVE=1:大小写敏感
SYSDBA_PWD / SYSAUDITOR_PWD:设置强密码(请记住,后续会用到)
初始化成功:
exit # 退出 dmdba,回到 root
cd /home/dmdba/dmdbms/script/root
./dm_service_installer.sh -t dmserver -dm_ini /dm8/data/DMOA/dm.ini -p DMOA
启动并设置开机自启:
systemctl start DmServiceDMOA
systemctl enable DmServiceDMOA
systemctl status DmServiceDMOA # 确认状态为 active (running)
运行如图:
需要退出按q即可
使用disql新建一个名称为dmdba的用户,设置密码为dameng_dba,并授予dba角色权限.
这个题目中的密码有误,达梦的密码要求至少8位,包含大写字母、小写字母、数字和特殊字符,因此此处使用 Dameng_Dba_2026!
登录
su - dmdba
cd /home/dmdbam/dmdbms/bin
./disql SYSDBA/Dameng123456@localhost:5234
在SQL>执行
-- 创建 DMDBA 用户
CREATE USER "DMDBA" IDENTIFIED BY "Dameng_Dba_2026!";
GRANT DBA TO "DMDBA";
使用disql新建一个名为TS_DMOA的表空间,新建一个名为DMOA的用户,并设置密码为dameng_oa,设置该用户的默认表空间为TS_DMOA。并授予resource角色权限。
这里的密码也是需要修改成新的密码
之后进行操作
# 1. 退出当前 disql 会话
exit
# 2. 用 DMOA 用户登录
./disql DMOA/Dameng_Oa_2026!@localhost:5234
创建表空间及剩余操作
-- 创建表空间
CREATE TABLESPACE TS_DMOA DATAFILE '/dm8/data/DMOA/TS_DMOA.dbf' SIZE 64 AUTOEXTEND ON NEXT 1 MAXSIZE 1024;
-- 创建 DMOA 用户(使用新密码)
CREATE USER "DMOA" IDENTIFIED BY "Dameng_Oa_2026!" DEFAULT TABLESPACE TS_DMOA;
GRANT RESOURCE TO "DMOA";
*表空间最小单位是64
使用DMOA用户新建表USERS,并插入数据,然后查询确认数据已经入库
退出 SYSDBA,用 DMOA 登录建表
exit
./disql DMOA/Dameng_Oa_2026!@localhost:5234
执行建表、插入、查询
CREATE TABLE USERS (ID INT, NAME VARCHAR(50), AGE INT);
INSERT INTO USERS VALUES (1, N'Tom', 30);
INSERT INTO USERS VALUES (2, N'Jack', 25);
SELECT * FROM USERS;
插入的运行结果
查询的运行结果
文章
阅读量
获赞
