本文参照达梦官方技术文档,进行测试、编写。

1、搭建环境

版本
操作系统Linux kylin10 4.19.90-23.8.v2101.ky10.x86_64
达梦数据库dm8_20240712_x86_rh7_64

2、查看系统信息,设置系统资源限制

[root@kylin10 ~]# df -Th
Filesystem            Type      Size  Used Avail Use% Mounted on
devtmpfs              devtmpfs  959M     0  959M   0% /dev
tmpfs                 tmpfs     981M   12K  981M   1% /dev/shm
tmpfs                 tmpfs     981M  9.3M  972M   1% /run
tmpfs                 tmpfs     981M     0  981M   0% /sys/fs/cgroup
/dev/mapper/klas-root xfs        66G  7.7G   58G  12% /
tmpfs                 tmpfs     4.0G  4.0K  4.0G   1% /tmp
/dev/sda1             xfs      1014M  177M  838M  18% /boot
tmpfs                 tmpfs     197M     0  197M   0% /run/user/992
tmpfs                 tmpfs     197M     0  197M   0% /run/user/0
[root@kylin10 ~]# 
[root@kylin10 ~]# 
[root@kylin10 ~]# 
[root@kylin10 ~]# ulimit -a
core file size          (blocks, -c) unlimited
data seg size           (kbytes, -d) unlimited
scheduling priority             (-e) 0
file size               (blocks, -f) unlimited
pending signals                 (-i) 7666
max locked memory       (kbytes, -l) 64
max memory size         (kbytes, -m) unlimited
open files                      (-n) 1024
pipe size            (512 bytes, -p) 8
POSIX message queues     (bytes, -q) 819200
real-time priority              (-r) 0
stack size              (kbytes, -s) 8192
cpu time               (seconds, -t) unlimited
max user processes              (-u) 7666
virtual memory          (kbytes, -v) unlimited
file locks                      (-x) unlimited
[root@kylin10 ~]# 
[root@kylin10 ~]# 
[root@kylin10 ~]# vi /etc/security/limits.conf 

dmdba hard nofile 65536
dmdba soft nofile 65536
dmdba hard nproc 65535
dmdba soft nproc 65535
dmdba hard core unlimited
dmdba soft core unlimited

[root@kylin10 ~]# reboot

[root@kylin10 ~]# ulimit -a

3、创建用户和组,创建安装所需的目录

[root@kylin10 ~]# groupadd -g 2001 dinstall
[root@kylin10 ~]# useradd -u 2001 -g dinstall -m -d /home/dmdba -s /bin/bash dmdba
[root@kylin10 ~]# 
[root@kylin10 ~]# passwd dmdba

[root@kylin10 ~]# mkdir /soft
[root@kylin10 ~]# 
[root@kylin10 ~]# mkdir /dm8

[root@kylin10 ~]# chown -R dmdba:dinstall /soft

[root@kylin10 ~]# chown -R dmdba:dinstall /dm8/

 
[root@kylin10 ~]# chmod -R 755 /soft/
[root@kylin10 ~]# chmod -R 755 /dm8/

4、上传介质,解压并挂载 

[dmdba@kylin10 ~]$ unzip dm8_20240712_x86_rh7_64.zip

[root@kylin10 ~]#  mount -o loop /home/dmdba/dm8_20240712_x86_rh7_64.iso /soft/
mount: /soft: WARNING: source write-protected, mounted read-only.
[root@kylin10 ~]# 

5、安装数据库

[dmdba@kylin10 soft]$ ./DMInstall.bin -i
Installer Language: 
[1]: 简体中文
[2]: English
Please select the installer's language [2]: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
所需空间: 2284M

请选择安装目录 [/home/dmdba/dmdbms]:/dm8
可用空间: 55G
是否确认安装路径(/dm8)? (Y/y:是 N/n:否)  [Y/y]:y

安装前小结
安装位置: /dm8
所需空间: 2284M
可用空间: 55G
版本信息: 
有效日期: 
安装类型: 典型安装
是否确认安装? (Y/y:是 N/n:否):y
2024-08-09 16:46:13 
[INFO] 安装 基础 模块...
2024-08-09 16:46:13 
[INFO] 安装达梦数据库...
2024-08-09 16:46:22 
[INFO] 安装 服务器 模块...
2024-08-09 16:46:23 
[INFO] 安装 客户端 模块...
2024-08-09 16:46:26 
[INFO] 安装 驱动 模块...
2024-08-09 16:46:28 
[INFO] 安装 手册 模块...
2024-08-09 16:46:29 
[INFO] 安装 服务 模块...
2024-08-09 16:46:30 
[INFO] 移动日志文件。
2024-08-09 16:46:30 
[INFO] 安装达梦数据库完成。

请以root系统用户执行命令:
/dm8/script/root/root_installer.sh

安装结束

[dmdba@kylin10 soft]$ 

用root用户运行脚本

[root@kylin10 ~]# /dm8/script/root/root_installer.sh
移动 /dm8/bin/dm_svc.conf 到/etc目录
创建DmAPService服务
Created symlink /etc/systemd/system/multi-user.target.wants/DmAPService.service → /usr/lib/systemd/system/DmAPService.service.
创建服务(DmAPService)完成
启动DmAPService服务
[root@kylin10 ~]# 

 注意:数据库安装完成后,需要切换至 root 用户执行上图中的命令 /dm8/script/root/root_installer.sh 创建 DmAPService,否则会影响数据库备份 ,DmAPService与达梦数据库备份相关。

配置环境变量

dmdba@kylin10 ~]$ vi .bash_profile

PATH=$PATH:$HOME/bin:/dm8/bin

export PATH

export LD_LIBRARY_PATH="$LD_LIBRARY_PATH:/dm8/bin"
export DM_HOME="/dm8"
[dmdba@kylin10 ~]$ 


[dmdba@kylin10 ~]$ source .bash_profile

 6、初始化数据库

[dmdba@kylin10 bin]$ cd /dm8/bin

以下命令设置页大小为 8 KB,簇大小为 16 KB,大小写敏感,字符集为 utf_8,数据库名为 DMTEST,实例名为 DMTESTSERVER,端口为 5236。

[dmdba@kylin10 bin]$ ./dminit path=/dm8/data PAGE_SIZE=8 EXTENT_SIZE=16 CASE_SENSITIVE=y CHARSET=1 DB_NAME=DMTEST INSTANCE_NAME=DMTESTSERVER PORT_NUM=5236 SYSDBA_PWD=dameng123
initdb V8
db version: 0x7000c
file dm.key not found, use default license!
License will expire on 2025-07-03
Normal of FAST
Normal of DEFAULT
Normal of RECYCLE
Normal of KEEP
Normal of ROLL

 log file path: /dm8/data/DMTEST/DMTEST01.log


 log file path: /dm8/data/DMTEST/DMTEST02.log

write to dir [/dm8/data/DMTEST].
create dm database success. 2024-08-09 16:51:37
[dmdba@kylin10 bin]$ 

dminit命令相关参数

[dmdba@kylin10 bin]$ ./dminit help
initdb V8
db version: 0x7000c
file dm.key not found, use default license!
License will expire on 2025-07-03
version: 03134284194-20240703-234060-20108 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,单位:K
LOG_SIZE                   日志文件大小(2048),单位为:M,范围为:256M ~ 8G
CASE_SENSITIVE             大小敏感(Y),可选值:Y/N,1/0
CHARSET/UNICODE_FLAG       字符集(0),可选值:0[GB18030],1[UTF-8],2[EUC-KR]
SEC_PRIV_MODE              权限管理模式(0),可选值:0[TRADITION],1[BMJ],2[EVAL],3[ZB]
SYSDBA_PWD                 设置SYSDBA密码(SYSDBA)
SYSAUDITOR_PWD             设置SYSAUDITOR密码(SYSAUDITOR)
DB_NAME                    数据库名(DAMENG)
INSTANCE_NAME              实例名(DMSERVER)
PORT_NUM                   监听端口号(5236)
BUFFER                     系统缓存大小(8000),单位M
TIME_ZONE                  设置时区(+08:00)
PAGE_CHECK                 页检查模式(3),可选值:0/1/2/3
PAGE_HASH_NAME             设置页检查HASH算法
EXTERNAL_CIPHER_NAME       设置默认加密算法
EXTERNAL_HASH_NAME         设置默认HASH算法
EXTERNAL_CRYPTO_NAME       设置根密钥加密引擎
RLOG_ENCRYPT_NAME          设置日志文件加密算法,若未设置,则不加密
RLOG_POSTFIX_NAME          设置日志文件后缀名,长度不超过10。默认为log,例如DAMENG01.log
USBKEY_PIN                 设置USBKEY PIN
PAGE_ENC_SLICE_SIZE        设置页加密分片大小,可选值:0、512、4096,单位:Byte
ENCRYPT_NAME               设置全库加密算法
BLANK_PAD_MODE             设置空格填充模式(0),可选值:0/1
SYSTEM_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/0
SQL_LOG_FORBID             是否禁止打开SQL日志(N),可选值:Y/N,1/0
DPC_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@kylin10 bin]$ 

PATH                       初始数据库存放的路经
EXTENT_SIZE                数据文件使用的簇大小(16),可选值:16, 32, 64,单位:页
PAGE_SIZE                  数据页大小(8),可选值:4, 8, 16, 32,单位:K
CASE_SENSITIVE             大小敏感(Y),可选值:Y/N,1/0
CHARSET/UNICODE_FLAG       字符集(0),可选值:0[GB18030],1[UTF-8],2[EUC-KR]
DB_NAME                    数据库名(DAMENG)
INSTANCE_NAME              实例名(DMSERVER)
PORT_NUM                   监听端口号(5236)

页大小 (page_size)、簇大小 (extent_size)、大小写敏感 (case_sensitive)、字符集 (charset) 、空格填充模式 (BLANK_PAD_MODE) 、页检查模式(PAGE CHECK) 等部分参数,一旦确定无法修改。 

7、注册数据库,启动服务

[root@kylin10 ~]# cd /dm8/script/root
[root@kylin10 root]#

[root@localhost root]# ./dm_service_installer.sh -t dmserver -dm_ini /dm8/data/DMTEST/dm.ini -p DMTESTSERVER


[root@kylin10 root]#  systemctl status DmServiceDMTESTSERVER
● DmServiceDMTESTSERVER.service - DM Instance Service(DmServiceDMTESTSERVER).
   Loaded: loaded (/usr/lib/systemd/system/DmServiceDMTESTSERVER.service; enabled; vendor preset: disabled)
   Active: inactive (dead)
[root@kylin10 root]#  systemctl start DmServiceDMTESTSERVER
[root@kylin10 root]#  systemctl status DmServiceDMTESTSERVER
● DmServiceDMTESTSERVER.service - DM Instance Service(DmServiceDMTESTSERVER).
   Loaded: loaded (/usr/lib/systemd/system/DmServiceDMTESTSERVER.service; enabled; vendor preset: disabled)
   Active: active (running) since Fri 2024-08-09 17:12:13 CST; 2s ago
  Process: 11696 ExecStart=/dm8/bin/DmServiceDMTESTSERVER start (code=exited, status=0/SUCCESS)
 Main PID: 11719 (dmserver)
    Tasks: 115
   Memory: 719.6M
   CGroup: /system.slice/DmServiceDMTESTSERVER.service
           └─11719 /dm8/bin/dmserver path=/dm8/data/DMTEST/dm.ini -noconsole

Aug 09 17:11:58 kylin10 systemd[1]: Starting DM Instance Service(DmServiceDMTESTSERVER)....
Aug 09 17:12:13 kylin10 DmServiceDMTESTSERVER[11696]: [43B blob data]
Aug 09 17:12:13 kylin10 systemd[1]: Started DM Instance Service(DmServiceDMTESTSERVER)..
[root@kylin10 root]#  systemctl enable DmServiceDMTESTSERVER
[root@kylin10 root]# 

8、登录测试


[dmdba@kylin10 ~]$ disql sysdba/dameng123@192.168.6.110:5236

服务器[192.168.6.110:5236]:处于普通打开状态
登录使用时间 : 19.160(ms)
disql V8
SQL> 
SQL> 
SQL> select status$ from v$instance;

行号     STATUS$
---------- -------
1          OPEN

已用时间: 0.822(毫秒). 执行号:64701.
SQL> 

9、卸载数据库

用root用户停数据库服务

[root@kylin10 root]#  systemctl stop DmServiceDMTESTSERVER

[dmdba@kylin10 dm8]$ ./uninstall.sh -i
有数据库服务正在运行,是否关闭服务后进行卸载? (i/I:忽略 c/C:取消 r/R:重试):r 

请确认是否卸载达梦数据库(/dm8/)? (y/Y:是 n/N:否):y

是否删除dm_svc.conf配置文件? (y/Y:是 n/N:否):y

正在删除所有数据库库服务
删除数据库服务DmJobMonitorService
删除数据库服务DmInstanceMonitorService
删除数据库服务DmAuditMonitorService
删除数据库服务DmAPService
删除数据库服务DmServiceDMTESTSERVER
删除所有数据库库服务完成
正在删除数据库目录
删除bin目录
删除bin目录完成
删除bin2目录
删除bin2目录完成
删除include目录
删除include目录完成
删除desktop目录
删除desktop目录完成
删除doc目录
删除doc目录完成
删除drivers目录
删除drivers目录完成
删除jdk目录
删除jdk目录完成
删除jar目录
删除jar目录完成
删除samples目录
删除samples目录完成
删除script目录
删除script目录完成
删除tool目录
删除tool目录完成
删除uninstall目录
删除uninstall目录完成
删除license_en.txt文件
删除license_en.txt文件完成
删除license_chs.txt文件
删除license_chs.txt文件完成
删除license_cht.txt文件
删除license_cht.txt文件完成
删除uninstall.sh文件
删除uninstall.sh文件完成
删除数据库目录完成

使用root用户执行命令:
/dm8/root_uninstaller.sh
[dmdba@kylin10 dm8]$ 

root用户执行脚本

[root@kylin10 root]# /dm8/root_uninstaller.sh
删除DmAPService服务
Removed /etc/systemd/system/multi-user.target.wants/DmAPService.service.
删除DmServiceDMTESTSERVER服务
Removed /etc/systemd/system/multi-user.target.wants/DmServiceDMTESTSERVER.service.
删除/etc/dm_svc.conf文件
[root@kylin10 root]# 

Logo

腾讯云面向开发者汇聚海量精品云计算使用和开发经验,营造开放的云计算技术生态圈。

更多推荐