随着最近几年国产化的发展,现在很多项目都要求信创和国产化,其中国产数据库就肯定需要讨论,今天就给大家分享下,如何在BlogCore操作达梦数据库。
其实BlogCore已经完全支持国产数据库,而且完全不需要任何处理,只需要改一下数据库连接字符串即可,因为达梦数据库和Oracle还是很像的。
当然如果你用的是其他框架,有几个点是需要自己注意的,这里就分步说明下,主要是三篇文章,分别是:安装服务、客户端连接、BlogCore访问。
1、新建用户,并配置相关读取文件等参数
使用 root 登录系统,添加用户组
groupadd dinstall
添加用户
useradd -g dinstall -m -d /home/dmdba -s /bin/bash dmdba
设置用户账号密码
passwd dmdba
xLX55xxxxxxxxxr
设置限制
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
这些设置是用于调整操作系统的资源限制,特别是用于管理用户进程的文件描述符和堆栈大小。具体解释如下:
dmdba hard nofile 65536 、dmdba soft nofile 65536:这两个设置用于调整当前用户(dmdba)的最大文件描述符数量。
nofile指的是可以打开的文件数量。hard限制是一个硬限制,表示用户无法将该限制值超过;
而soft限制是一个软限制,用户可以临时将限制值超过,但不能超过hard限制值。在这里,设置为65536表明用户可以同时打开的文件数量非常大。
dmdba hard stack 32768、dmdba soft stack 16384:这两个设置用于调整当前用户(dmdba)的堆栈大小。
堆栈大小指的是用于存储函数调用信息、局部变量等的内存空间。同样,hard限制是一个硬限制,表示用户无法将该限制值超过;soft限制是一个软限制,用户可以临时将限制值超过,但不能超过hard限制值。在这里,设置为32768和16384表示堆栈大小为32KB和16KB。
这些设置可以根据需要进行调整,以便在多任务处理和资源密集型操作中满足系统和应用程序的要求。
2、拷贝安装文件到数据库
从官网下载文件
https://eco.dameng.com/download/
可以直接把下载的文件ftp到服务器目录,也可以通过scp的形式拷贝安装包到服务器
scp -P 9413 dm8_20230418_x86_rh6_64.zip
root@你的ip地址:/home
切换root,输入root密码,进行解压
su - root
unzip dm8_20230418_x86_rh6_64.zip
3 挂载镜像,初始化安装配置
将上传的ISO文件,挂载镜像
切换root用户
su - root
mount -o loop /home/dm8_20230418_x86_rh6_64.iso /mnt
创建目录
# 数据目录
mkdir /home/dmdba/dmsoft
# 安装目录
mkdir /home/dmdba/dmdbms
达梦数据库(DMDBMS)和DMSoft两个文件夹都与达梦数据库软件相关。
DMDBMS 文件夹:DMDBMS 是达梦数据库管理系统的缩写,该文件夹包含了达梦数据库的核心组件和相关文件。其中可能包括但不限于数据库引擎、连接器、工具等。这些文件也可以在安装达梦数据库软件时选择安装的部分。
DMSoft 文件夹:DMSoft 文件夹则包含了达梦软件的其他辅助组件和工具。这些工具可能包括数据库备份与恢复工具、数据库管理工具、监控工具等。DMSoft 文件夹中的工具可以帮助用户更好地管理和维护达梦数据库系统。
总的来说,DMDBMS 文件夹包含的是达梦数据库的核心组件,而 DMSoft 文件夹包含的是辅助组件和工具。它们都是达梦数据库软件的一部分,用于支持数据库的操作和管理。
授予权限
chown dmdba:dinstall -R /home/dmdba/
chmod -R 755 /home/dmdba/
切换回dmdba用户,进入挂载目录,执行达梦安装二进制
su dmdba
cd /mnt/
./DMInstall.bin -i
开始执行安装过程
1、选择语言,默认英文e,输入中文C,回车
2、设置是否安装key,选择N,这里需要购买付费
3、设置时区,Y
4、设置GTM+08=China时区,默认21
5、设置安装类型,默认1
6、设置安装路径,默认 /home/dmdba/dmdbms
7、确认安装
在达梦数据库的安装过程中,确实存在四种常见的安装类型:Typical(典型安装)、Server(服务器安装)、Client(客户端安装)和 Custom(自定义安装)。它们之间的区别如下:
典型安装(Typical):这种安装类型会安装达梦数据库的主要组件,包括数据库引擎、系统表空间等。典型安装适用于大多数用户,它可以将达梦数据库完整地安装在一台计算机上,包括数据库引擎和常用的管理工具。
服务器安装(Server):这种安装类型是在网络环境中实现数据库服务器的安装。服务器安装会将数据库引擎和相关的服务安装在一台计算机上,允许其他计算机通过网络连接到该数据库服务器进行数据访问和管理。
客户端安装(Client):这种安装类型主要针对需要访问达梦数据库的客户端计算机。客户端安装通常只安装数据库的客户端组件,例如连接器、查询工具等。它不会包含数据库引擎和服务端组件。
自定义安装(Custom):自定义安装允许用户根据自身需求选择需要安装的组件和功能。您可以自行选择安装数据库引擎、客户端组件、管理工具等,以满足您特定的需求。自定义安装灵活性较高,适用于有特定需求的用户。
需要根据具体的场景和需求选择适合的安装类型。对于单机独立使用的情况,典型安装通常是最常见且合适的选择。而对于需要构建数据库服务器和多个客户端连接的情况,常规安装将涉及到服务器和客户端的安装。自定义安装则适用于需要灵活配置数据库组件的情况。
然后看到安装完成,用root运行服务安装
4 安装达梦数据库
切换root用户,安装达梦服务server
su - root
bash /home/dmdba/dmdbms/script/root/root_installer.sh
直到显示安装成功并开启DmAP服务
再次切换dmdba用户,进入达梦服务端安装目录
su - dmdba
cd /home/dmdba/dmdbms/bin
查看帮助指令,并初始化实例数据到dmsoft目录
./dminit help
./dminit path=/home/dmdba/dmsoft
直到显示创建database成功
数据库账号密码
账号
密码
开放端口
firewall-cmd --zone=public --add-port=5236/tcp --permanent
重载
firewall-cmd --reload
测试端口是否通常
telnet 你的ip 5236
5、创建进程守护服务
(安装DmServiceDMOA.service服务)
指定达梦运行的配置文件
切换root账号
su - root
bash /home/dmdba/dmdbms/script/root/dm_service_installer.sh -t dmserver -p DMOA -dm_ini /home/dmdba/dmsoft/DAMENG/dm.ini -m open
查看服务是否安装成功
systemctl list-unit-files | grep DMOA
启用进程守护
systemctl start DmServiceDMOA.service
查看状态
systemctl status DmServiceDMOA.service
6 测试连接、其他事项
控制台sql
cd /home/dmdba/dmdbms/bin
./disql 账号/密码@localhost:5236
查看监听端口
lsof -i tcp:5236
查看开放的端口
firewall-cmd --list-ports
停止防火墙
systemctl stop firewalld
此时设置外网连接,可以查看端口监听情况,最后记得把防火墙关了
最后,服务搭建好后,有三个概念需要了解:
关于表空间概念
1、可以使用一个表空间tableSpace 一个表空间可以支持多个schema 比如main空间,可以建立多个scheme,共用一个账号密码,多个schema来隔离,每个schema对应一个数据库。
2、最好是多个表空间 每个表空间,可以单独创建一个USER ID和密码,然后绑定一个数据库。
表空间、模式、用户之间的关系
在达梦数据库中,模式、表空间和用户之间有以下关系:
1. 模式(Schema):模式是数据库对象的逻辑容器,用于组织和管理数据库中的对象(如表、视图、存储过程等)。一个数据库可以包含多个模式,每个模式下可以包含多个对象。不同模式下的对象可以有相同的名称,但彼此之间是独立的。
2. 表空间(Tablespace):表空间是物理存储的管理单位,用于存储数据库中的数据文件。表空间可以包含一个或多个数据文件,而数据文件则用于存储表、索引和其他数据库对象的实际数据。每个表空间都有一个唯一的名称,通过表空间可以对数据库中的数据进行逻辑和物理上的组织。
3. 用户(User):用户是数据库的访问单位,每个用户都有自己独立的身份和权限。用户可以创建和拥有自己的模式,也可以在其他模式中创建对象。每个用户可以通过用户名和密码进行登录,并且只能访问自己有权限的对象。
总结起来,模式用于逻辑上的组织和管理数据库对象,表空间用于物理存储数据文件,而用户则是访问和管理数据库的单位。在达梦数据库中,一个用户可以拥有一个或多个模式,每个模式可以分配一个或多个表空间用于存储数据。不同用户之间通过权限控制来保证数据的安全性和隔离性。