【DM】Linux下安装 DM数据库-图形化安装
- 1、安装前准备工作
- 1.1 检查 Linux系统信息
- 1.2 创建DM安装用户
- 1.3 检查操作系统限制
- 1.4 检查系统内存与存储空间
- 1.4.1 检查内存
- 1.4.2 检查存储空间
- 1.4.2 检查临时文件目录
- 1.4.3 设置 JAVA 环境
- 2、使用dmdba用户安装DM8
- 2.1 挂载 DM 安装光盘
- 2.2 命令行安装
- 2.3 安装步骤
- 步骤 1:选择安装语言
- 步骤 2:确认是否继续安装
- 步骤 3:验证Key文件
- 步骤 4:输入时区
- 步骤 5:选择安装类型
- 步骤 6:选择安装路径
- 步骤 7:安装小结
- 3、初始化数据库与注册服务
- 3.1 配置实例
- 3.2 root用户下注册服务
- 3.3 服务程序的启动
- 4、数据库的使用
- 1、登录 disql
- 2、用户角色与权限管理
- 1. 创建用户
- 3. 授权权限
- 4. 修改用户密码
- 5. 其他常用操作
- 2. 角色管理
💖The Begin💖点点关注,收藏不迷路💖 |
1、安装前准备工作
先进行一系列的系统检查和环境准备。以下是一些关键的准备步骤,以确保DM能够顺利安装并运行。
DM 软件安装包如果是经过数字签名的,则需要进行数字签名校验,否则跳过该步骤:
1、导入达梦公司的公钥:
gpg --import dm-pub-key
导入名为 dm-pub-key 的文件中的公钥到你的 GPG 密钥环中。
2、将达梦公司的公钥添加到绝对信任列表:
gpg --edit-key 武汉达梦数据库有限公司
进入到编辑该公钥的交互式界面。在这个界面中,你可以设置对这个公钥的信任级别。通常,选择设置为 “5” 表示完全信任。具体的选择和信任级别会依据你的安全策略和实际需要而定。
3、验证达梦安装包的数字签名:
gpg --verify dm.sign dm8_setup_xxx.iso
使用导入的公钥 dm-pub-key 对 dm8_setup_xxx.iso 文件进行数字签名的验证。如果验证通过,输出会显示 “Good signature” 表示签名是有效的,安装包文件是完好无损的。
需要注意的是,数字签名的验证过程关键在于你所导入的公钥必须是可信的,而且没有被篡改过。
1.1 检查 Linux系统信息
1、获取系统位数:
[root@zyl-server ~]# getconf LONG_BIT
64
[root@zyl-server ~]#
2、查询操作系统 release 信息:
lsb_release -a
或
cat /etc/os-release
或
cat /etc/redhat-release
3、查询系统信息:
cat /etc/issue
4、查询系统名称:
uname -a
1.2 创建DM安装用户
为了减少对操作系统的影响,为DM创建一个专用系统用户来安装和运行DM。
1、创建安装用户组dinstall
groupadd -g 12349 dinstall
2、创建安装用户dmdba,并将其添加到dinstall组中
useradd -u 12345 -g dinstall -m -d /home/dmdba -s /bin/bash dmdba
3、初始化用户密码
passwd dmdba
之后认使用用户dmdba进行安装部署等操作。
1.3 检查操作系统限制
使用ulimit -a命令检查当前用户的操作系统资源限制。根据DM的要求,根据需要调整某些限制参数,如data seg size、file size、open files和virtual memory。
可以编辑 /etc/security/limits.conf文件进行参数涉资,确保数据库能够正常运行并处理大规模的数据操作和请求。
# 设置用户名为 john 的用户的虚拟内存限制为 unlimited:
* - nofile 65536# 设置所有用户的虚拟内存限制为 1048576(即 1GB):
* - memlock 1048576
资源限制建议设置:
-
data seg size (-d):
- 意义: 控制数据段的大小,即进程的数据区域大小。
- 建议设置: 建议设置为
1048576
(即 1GB)以上或unlimited
(无限制)。如果设置过小,可能会导致数据库启动失败,因为数据库需要足够的内存空间来存储数据和执行操作。
-
file size (-f):
- 意义: 控制单个文件的大小。
- 建议设置: 建议设置为
unlimited
(无限制)。如果设置过小,可能会导致数据库安装或初始化过程中出现文件大小限制的问题,特别是在操作大型文件或数据集时。
-
open files (-n):
- 意义: 控制每个进程能够打开的文件数量。
- 建议设置: 建议设置为
65536
以上或unlimited
(无限制)。数据库系统经常需要同时打开多个文件,因此较低的限制可能会导致操作受限或失败。
-
virtual memory (-v):
- 意义: 控制虚拟内存的大小。
- 建议设置: 建议设置为
1048576
(即 1GB)以上或unlimited
(无限制)。虚拟内存的限制影响数据库启动和运行时的内存分配能力,设置过小可能会导致数据库启动失败或者无法处理大量数据和请求。
1.4 检查系统内存与存储空间
1.4.1 检查内存
- 获取内存总大小:
grep MemTotal /proc/meminfo
- 获取交换分区大小:
grep SwapTotal /proc/meminfo
- 获取内存使用详情:
free
1.4.2 检查存储空间
提前规划好安装目录,预留足够的存储空间。在 DM 安装前也应该为数据库实例预留足够的存储空间,规划好数据路径和备份路径。
- 查询指定目录的可用空间:
df -h
或者
df -h 存储目录
1.4.2 检查临时文件目录
DM 安装程序在安装时将产生临时文件,临时文件需要 1GB 的存储空间,临时文件目录默认为/tmp。
如果/tmp 目录不能保证 1GB 的存储空间,用户可以扩展/tmp 目录存储空间或者通过设置环境变量 DM_INSTALL_TMPDIR 指定安装程序的临时目录。
mkdir -p /dm8data/DM_INSTALL_TMPDIR=/dm8data/export DM_INSTALL_TMPDIR
1.4.3 设置 JAVA 环境
jdk安装配置:https://blog.csdn.net/qq_41840843/article/details/136897749
DM_JAVA_HOME=/usr/local/jdk1.8.0_321
export DM_JAVA_HOME
2、使用dmdba用户安装DM8
2.1 挂载 DM 安装光盘
将 DM 安装光盘放入光驱 /home/,然后加载(mount)光驱。将光驱中的内容挂载到指定的挂载点 /mnt/dvd 上
su - dmdbamkdir /mnt/dvd挂载iso文件(只能读,不可写)mount -o loop /home/dm8_20240408_x86_rh7_64.iso /mnt/dvd重新以可读可写的方式挂载
mount -o remount,rw /home/dm8_20240408_x86_rh7_64.iso /mnt/dvd
cd /mnt/dvd
拷贝 DMInstall.bin到 /db/dmdbms/
[root@zyl-server dmdbms]# cd /mnt/iso
[root@zyl-server iso]#
[root@zyl-server iso]#
[root@zyl-server iso]# ll
total 1057031
-r-xr-xr-x. 1 root root 2587699 Mar 20 14:04 DM8 Install.pdf
-r-xr-xr-x. 1 root root 1079810877 Apr 8 13:35 DMInstall.bin
[root@zyl-server iso]# cp DMInstall.bin /db/dmdbms/
[root@zyl-server iso]#
将 /db/dmdbms/目录下的 DMInstall.bin 文件赋予执行权限。
chmod 755 ./DMInstall.bin
2.2 命令行安装
在安装用户dmdba下,执行以下命令将运行 DM 的命令行安装。
./DMInstall.bin -i
2.3 安装步骤
步骤 1:选择安装语言
根据提示选择安装语言,输入相应的选项后回车。
步骤 2:确认是否继续安装
如果系统中已存在DM,会询问是否继续安装。确认继续后,进行下一步。
步骤 3:验证Key文件
输入Key文件路径(如果有的话)。如果Key文件合法且在有效期内,安装程序将允许继续安装。
步骤 4:输入时区
根据提示选择或输入时区信息。
步骤 5:选择安装类型
您可以选择典型安装或自定义安装。如果选择自定义安装,需要手动输入要安装的组件序号。
步骤 6:选择安装路径
可以输入 DM 的安装路径,不输入则使用默认路径,默认值为$HOME/dmdbms(如
果安装用户为 root,则默认安装目录为/opt/dmdbms,但不建议使用 root 系统用户
来安装 DM)。 如下图所示:
注意: 安装完成后,终端提示“请以 root 系统用户执行命令”。由于使用非 root
系统用户进行安装,所以部分安装步骤没有相应的系统权限,需要用户手动执行相关命
令。用户可根据提示完成相关操作。
步骤 7:安装小结
安装结束后,还需要初始化数据库并注册相关服务才能正式运行达梦数据库。
3、初始化数据库与注册服务
安装完成后,根据提示,需要以root用户身份执行一些额外的命令来完成数据库的初始化和服务的注册。这通常涉及到设置环境变量、执行dminit
命令初始化数据库、以及配置并启动数据库服务等步骤。
3.1 配置实例
使用 dmdba
用户配置实例,进入到 DM 数据库安装目录下的 bin
目录中,使用 dminit
命令初始化实例。
dminit
命令可设置多种参数,可查看可配置参数:
/home/dmdba/dmdbms/bin/dminit help
注意:页大小 (page_size)、簇大小 (extent_size)、大小写敏感 (case_sensitive)、字符集 (charset) 这四个参数一旦确定无法修改,需谨慎设置。
- extent_size:数据文件使用的簇大小,只能是 16 页、32 页或 64 页之一,缺省使用 16 页。
- page_size:数据文件使用的页大小,可以是 4 KB、8 KB、16 KB 或 32 KB 之一,缺省使用 8 KB。
- case_sensitive:标识符大小写敏感,默认值为 Y。
- charset:字符集选项,0 代表 GB18030,1 代表 UTF-8,2 代表韩文字符集 EUC-KR。
示例命令,初始化一个数据库,放在/home/dmdba/dmdbms 目录下,设置页大小为 32 KB,簇大小为 32 KB,大小写敏感,字符集为 utf_8,数据库名为 DMDB,实例名为 DBSERVER,端口为 5237。:
./dminit path=/home/dmdba/dmdbms PAGE_SIZE=32 EXTENT_SIZE=32 CASE_SENSITIVE=y CHARSET=1 DB_NAME=DMDB INSTANCE_NAME=DBSERVER PORT_NUM=5237
3.2 root用户下注册服务
DM 提供了 14 个服务脚本模板,分别是 DmAPService 服务、DmAuditMonitor 服务、
DmJobMonitor 服务、DmInstanceMonitor 服务、DmServer 服务、DmWatchService
服务、DmMonitorService 服务、DmASMSvrService 服务、DmCSSService 服务和
DmCSSMonitorService 服 务 、 DmDRSService 服 务 、 DmDRASService 服 务 、
DmDCSService 服务和 DmDSSService 服务。其中前 4 个在安装/bin 目录下,其他的都
在/bin/service_template 下。
注册服务需使用 root
用户进行注册。DM 提供了将 DM 服务脚本注册成操作系统服务的脚本,同时也提供了卸载操作系统服务的脚本。注册和卸载脚本文件所在目录为安装目录的“/script/root”子目录下。
cd /home/dmdba/dmdbms/script/root
./dm_service_installer.sh -t dmserver -dm_ini /home/dmdba/dmdbms/DMDB/dm.ini -p DMSERVER
这条命令的含义是:
-t dmserver
:指定要注册的服务类型为dmserver
,即 DM 数据库服务器。-dm_ini /home/dmdba/dmdbms/DMDB/dm.ini
:指定 DM 数据库的配置文件dm.ini
的路径。-p DMSERVER
:指定服务的名称为DMSERVER
。
执行这个命令后,DM 数据库服务将被注册到系统中,可以使用 systemctl
命令来管理这个服务,例如:
- 启动服务:
systemctl start DmServiceDMSERVER
- 停止服务:
systemctl stop DmServiceDMSERVER
- 重启服务:
systemctl restart DmServiceDMSERVER
- 查看服务状态:
systemctl status DmServiceDMSERVER
3.3 服务程序的启动
-
使用
systemctl
启动服务:systemctl start DmServiceDMSERVER.service
-
前台启动,进入 DM 安装目录/home/dmdba/dmdbms/bin:
./dmserver /home/dmdba/dmdbms/DMDB/dm.ini
关闭数据库,输入
exit
。 -
使用服务脚本启动/停止/重启数据库:
./DmServiceDMSERVER start/stop/restart
-
查看数据库状态:
./DmServiceDMSERVER status
4、数据库的使用
1、登录 disql
在Linux环境下,首先进入数据库软件的bin
目录:
cd /home/dmdba/dmdbms/bin
然后,使用disql
工具登录数据库。对于非默认用户和密码,特别是密码包含特殊字符时,需要按以下方式输入:
./disql 用户名/'"密码"'@主机名:端口号
例如:
./disql dmdba/'"zyl@2024"'@192.168.234.10:5237
如果用户名、密码和端口号都是默认的(通常是SYSDBA/SYSDBA和端口),则可以直接:
./disql SYSDBA/SYSDBA@192.168.234.10:5237
这将启动disql
客户端并连接到本地或指定的默认数据库实例。
2、用户角色与权限管理
1. 创建用户
CREATE USER ZYl IDENTIFIED BY ZYl20240411;
创建用户ZYl
,密码为ZYl20240411
.
3. 授权权限
- 授权基本权限:
GRANT "DBA" TO "ZYl";
给ZYl
用户授予DBA
权限。
4. 修改用户密码
ALTER USER ZYl IDENTIFIED BY 'newpassword';
将ZYl
用户的密码更改为newpassword
。
5. 其他常用操作
- 查看当前用户:
SELECT USER;
- 删除用户(慎用):
DROP USER ZYl CASCADE;
删除ZYl
用户及其所有对象。
禁用/启用用户
-- 禁用用户
ALTER USER myuser ACCOUNT LOCK;-- 启用用户
ALTER USER myuser ACCOUNT UNLOCK;
2. 角色管理
创建角色:
CREATE ROLE myrole;
这个命令创建了一个名为myrole
的角色。
授予系统权限给角色
GRANT CREATE TABLE TO myrole;
这个命令授予myrole
角色创建表的权限。
授予对象权限给角色
假设有一个表mytable
,要将对其的查询权限授予myrole
:
GRANT SELECT ON mytable TO myrole;
将角色授予用户
GRANT myrole TO myuser;
这个命令将myrole
角色授予myuser
用户,myuser
将继承myrole
的所有权限。
撤销角色
REVOKE myrole FROM myuser;
这个命令从myuser
用户中撤销myrole
角色。
撤销权限
REVOKE SELECT ON mytable FROM myrole;
这个命令从myrole
角色中撤销对mytable
的查询权限。
💖The End💖点点关注,收藏不迷路💖 |