Linux安装达梦数据库DM8

发布时间 2023-09-11 15:28:34作者: sowler

1、简介描述

DM8是达梦公司在总结DM系列产品研发与应用经验的基础上,坚持开放创新、简洁实用的理念,推出的新一代自研数据库。DM8吸收借鉴当前先进新技术思想与主流数据库产品的优点,融合了分布式、弹性计算与云计算的优势,对灵活性、易用性、可靠性、高安全性等方面进行了大规模改进,多样化架构充分满足不同场景需求,支持超大规模并发事务处理和事务-分析混合型业务处理,动态分配计算资源,实现更精细化的资源利用、更低成本的投入。一个数据库,满足用户多种需求,让用户能更加专注于业务发展。

2、下载DM8

达梦官网

https://www.dameng.com/

找到数据库,下载DM8

https://www.dameng.com/list_103.html

下载的时候需要选择安装操作系统,Linux操作系统就是X86,查看当前Linux版本信息

lsb_release -a

选择相对应的版本进行下载。下载成功是一个压缩包。

3、上传文件到Linux

将下载的压缩包解压并上传的/opt下面,我这里上传到:

/opt/dm8-iso

4、安装DM8

官网可以找到达梦技术文档,根据文档步骤进行安装就没有问题。文档的安装步骤很详细。文档地址:

https://eco.dameng.com/document/dm/zh-cn/start/install-dm-linux-prepare.html

下面记录本人自己按照文档安装相关步骤及遇到的问题解决:

首先创建用户所在的组,命令如下:

groupadd dinstall

创建Linux用户,命令如下:

useradd -g dinstall -m -d /home/dmdba -s /bin/bash dmdba

修改用户密码,命令如下:

passwd dmdba

修改系统配置,修改一下系统限制,否则之后在安装时可能报错:

vi /etc/security/limits.conf

dmdba hard nofile 65536
dmdba soft nofile 65536
dmdba hard stack 32768
dmdba soft stack 16384

修改成功后,切换到 dmdba 用户,查看是否生效

su - dmdba

查看配置:

ulimit -a

如果已生效则切换的root用户挂载镜像,否则需要在dmdba设置参数临时生效:

ulimit -n 65536

挂载镜像:切换root用户进入上传的镜像目录下执行:

mount -o loop ./dm8_20230418_x86_rh6_64.iso  /mnt

镜像挂载成功后,新建安装目录:dm8,本人安装在/usr/local下面(可以根据需要安装到其他位置),进入/usr/local目录:

mkdir /dm8

将新建的安装路径目录权限的用户修改为 dmdba,用户组修改为 dinstall。命令如下:

chown dmdba:dinstall -R /dm8/

给安装路径下的文件设置 755 权限。命令如下:

chmod -R 755 /dm8

下面开始正式安装,需要切换至 dmdba 用户下安装:

su - dmdba

进入镜像挂载目录:cd /mnt/ 执行:

./DMInstall.bin -i

选择语言,安装中文语言选择C 、英文选择E。输入成功后回车下一步:

由于目前还没有购买授权密钥,key路径选择不配置。需要设置一下时区中国标准时间:21,回车下一步:

选择典型安装,配置数据库安装路径为上面新建的目录,设置完成后确认安装:

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

5、配置环境变量

进入cd /home/dmdba/目录下面编辑文件 .bash_profile

vim .bash_profile

切换至 dmdba 用户下,执行以下命令,使环境变量生效。

su - dmdba

source .bash_profile

6、配置实例

dminit 命令可设置多种参数,可执行如下命令查看可配置参数。

./dminit help

注意:页大小 (page_size)、簇大小 (extent_size)、大小写敏感 (case_sensitive)、字符集 (charset) 这四个参数,一旦确定无法修改,需谨慎设置。如果需要更改只能删除实例在新建一个新的实例重新配置。

自定义初始化实例的参数,参考如下示例:

./dminit path=/usr/local/dm8/data PAGE_SIZE=32 EXTENT_SIZE=32 CASE_SENSITIVE=y  LENGTH_IN_CHAR=y  CHARSET=1 DB_NAME=DMDB INSTANCE_NAME=DBSERVER PORT_NUM=5236

以上命令设置页大小为 32 KB,簇大小为 32 KB,大小写敏感,VARCHAR类型以字符为单位,字符集为 utf_8,数据库名为 DMDB,实例名为 DBSERVER,端口为 5236

相关参数说明:

PAGE_SIZE:数据页大小(8),可选值:4, 8, 16, 32,单位:K
EXTENT_SIZE:数据文件使用的簇大小(16),可选值:16, 32, 64,单位:页
CASE_SENSITIVE:大小敏感(Y),可选值:Y/N,1/0
LENGTH_IN_CHAR:VARCHAR类型以字符为单位
charset 字符集选项。0 代表 GB18030;1 代表 UTF-8;2 代表韩文字符集 EUC-KR;取值 0、1 或 2 之一。默认值为 0。
DMDB:数据库名
INSTANCE_NAME:实例名
PORT_NUM:端口默认端口 5236 ,初始化时设置 dm.ini 中的监听端口号,默认 5236 。服务器配置此参数,有效值范围(1024~65534),发起连接端的端口在1024~65535之间随机分配。可选参数。

7、注册服务

注册服务需使用 root 用户进行注册

进入安装目录cd /usr/local/dm8/script/root 执行命令:

./dm_service_installer.sh -t dmserver -dm_ini /usr/local/dm8/data/DMDB/dm.ini -p DMSERVER

-t  指定服务类型为dmserver  -dm_ini  指定配置文件路径 -p  指定服务名称

顺便写一下卸载服务命令:

./dm_service_uninstaller.sh -t dmserver -dm_ini /usr/local/dm8/data/DMDB/dm.ini -p DMSERVER

执行脚本不一样,后面的参数和创建时是一样的。

8、通过服务启动、停止数据库

服务注册成功后,启动数据库,如下所示:

systemctl start DmServiceDMSERVER.service

停止数据库,如下所示:

systemctl stop DmServiceDMSERVER.service

重启数据库,如下所示:

systemctl restart DmServiceDMSERVER.service

查看数据库服务状态,如下所示:

systemctl status DmServiceDMSERVER.service

9、进入测试登录:

输入 :disql

初始用户名:SYSDBA,密码:SYSDBA

进入成功,查看达梦数据库库名:

select name,create_time from v$database;

查看数据库授权信息:

select * from v$license;

达梦数据库试用期限为一年,官网定期更新安装包版本期限。EXPIRED_DATE字段信息显示过期时间:

select EXPIRED_DATE from v$license;

一定要在截止前把数据库迁移或备份,然后官网下载最新安装包重新安装,再恢复数据。

刷新授权 执行:

sp_load_lic_info();

将试用授权或正式光盘授权中的key文件重命名为dm.key,放到达梦数据库安装路径的bin路径中,替换原来的dm.key(建议将原来的改名备份下),最好是将给755权限,给dmdba:dinstall的用户和组权限。然后重启数据库服务,数据库会自动识别到新的授权。

10、连接工具:

连接工具可以使用官网下载的安装包进行只安装客户端工具,官网提供了多种工具。每一个工具都有不通的作用。可以自行了解。

下面介绍一个连接工具,页面简洁方便:DBeaver

DBeaver下载:https://dbeaver.io/download/

使用DBeaver连接需要配置相关驱动,官网连接驱动下载地址:

https://eco.dameng.com/document/dm/zh-cn/app-dev/java-MyBatis-Plus-frame.html

windows连接DM数据库配置:

https://zhuanlan.zhihu.com/p/615526878

mac连接DM数据库配置:

https://blog.csdn.net/u011019141/article/details/131111164