达梦数据库教程(1)命令行方式部署达梦数据库

达梦数据库教程(1)命令行方式部署达梦数据库

前言

达梦数据库最大的特点之一就是从安装到使用都可以完全使用图形化完成,但是线上操作系统可能大多数并没有配置图形化界面,所以在安装阶段使用命令行也是更通用、快捷的方法。本篇将详细介绍如何通过命令行方式在Linux系统上快速部署达梦V8单机版,涵盖安装前的环境准备、数据库初始化、服务启动及基本验证步骤。

一、系统环境初始化

1.1 创建达梦数据库相关用户和组

groupadd -g 2001 dinstall
useradd  -G dinstall -m -d /home/dmdba -s /bin/bash -u 2001 dmdba
passwd dmdba

1.2 创建达梦数据库相关目录

非必需,根据实际情况调整

#创建数据存放目录、归档目录等
mkdir -p /data/dmdbms/{data,redo,backup,tmp}

#修改目录属组和权限
chown -R dmdba:dinstall /data/dmdbms
chmod -R 755 /data/dmdbms

1.3 修改操作系统最大打开文件

vi /etc/security/limits.conf

dmdba  soft      nice       0
dmdba  hard      nice       0
dmdba  soft      as         unlimited
dmdba  hard      as         unlimited
dmdba  soft      fsize      unlimited
dmdba  hard      fsize      unlimited
dmdba  soft      nproc      65536
dmdba  hard      nproc      65536
dmdba  soft      nofile     65536
dmdba  hard      nofile     65536
dmdba  soft      core       unlimited
dmdba  hard      core       unlimited
dmdba  soft      data       unlimited
dmdba  hard      data       unlimited

#切换用户验证配置
su - dmdba
ulimit -a

1.4 修改文件描述符

ulimit -n 65536
sed  '/# End of file/i * soft nofile 65536\n* hard nofile 65536' /etc/security/limits.conf

1.5 配置用户环境变量

su - dmdba
vi .bash_profile
export DM_HOME="/data/dmdbms"
export LD_LIBRARY_PATH="$LD_LIBRARY_PATH:/data/dmdbms/bin"
export PATH="$PATH:$DM_HOME/bin:$DM_HOME/tool"

1.6 确保临时目录空间可用

达梦数据库在安装过程中会用到/tmp临时目录,要求至少有2G的临时空间。如果在系统初始化时没有预留充足的空间,那么需要调整环境变量DM_INSTALL_TMPDIR的值,将临时目录指向到其他地方

export DM_INSTALL_TMPDIR=/data/dmdbms/tmp

1.7 确保操作系统时间准确
如果操作系统时间有较大误差,会导致集群异常、数据库日志错误等问题,建议配置NTP服务

1.8 其他优化项

包括关闭防火墙、SELINUX、NUMA、HUGEPAGE、SWAP等设置


二、安装达梦数据库

这一步是使用安装介质完成数据库的安装,安装完成之后还需要进行数据库实例初始化操作

2.1 挂载安装镜像

mount -o loop /usr/local/src/dm8_20240408_x86_rh7_64.iso /mnt

2.2 运行安装脚本

切换到dmdba账户后运行安装脚本,-i 选项表示命令行方式安装,不需要图形化支持,安装过程根据提示填写安装目录、数据库时区、Key文件路径等信息

su  - dmdba
/mnt/DMInstall.bin -i

2.3 启动DMAP服务

切换root账号运行脚本以启动DmAPService服务(该服务默认监听4236端口),达梦数据库相关功能会依赖DmAP服务,所以一定要先保证该服务的正常运行

/data/dmdbms/script/root/root_installer.sh


三、实例初始化与服务注册

3.1 实例初始化

数据库安装完成以后使用./dminit脚本完成实例初始化(如果是通过图形化方式创建的实例,那么则是使用DMCA.sh脚本完成实例的初始化),初始化时可以对数据库路径、页大小、大小写敏感、默认字符集等参数进行设置。该脚本类似Oracle的dbca程序,使用该脚本可以在一台服务器上创建多个不同的实例

su - dmdba 

/data/dmdbms/bin/dminit PATH=/data/dmdbms \
PORT_NUM=5236 LOG_SIZE=1024 PAGE_SIZE=32 EXTENT_SIZE=32 \
INSTANCE_NAME=DMSERVER DB_NAME=DAMENG \
SYSDBA_PWD=$PASSWORD SYSAUDITOR_PWD=$PASSWORD \
CHARSET=1 CASE_SENSITIVE=1


dminit脚本主要参数

./dminit help
# PATH:数据目录
# EXTENT_SIZE:数据文件使用的簇大小,单位为页,可选值:16, 32, 64,默认16,建议修改为32或64
# PAGE_SIZE:数据页大小,单位为K,默认为8KB,建议调为16或32,该值一旦初始化后不能修改
# LOG_PATH:日志文件路径,默认为DB_NAME选项指定的同名目录
# LOG_SIZE:重做日志文件大小,默认为256M,可设置范围为256M-8G,建议调大,确保重做日志能存放更多的数据,减少循环写入的频率
# PORT_NUM:数据库监听端口,默认为5236
# CASE_SENSITIVE:是否启用大小写敏感,默认为Y,开启大小写敏感后,小写的标识符应该用""括起,否则会被自动转换为大写。
# CHARSET/UNICODE_FLAG:字符集,可选值分别为0[GB18030],1[UTF-8],2[EUC-KR],默认为0,建议修改为1
# INSTANCE_NAME:实例名,默认为DMSERVER
# DB_NAME:数据库名,默认为DAMENG
# SYSDBA_PWD:设置SYSDBA密码,默认为SYSDBA
# SYSAUDITOR_PWD:设置SYSAUDITOR密码,默认为SYSAUDITOR
# INI_FILE:实例配置文件dm.ini存放路径,默认为DB_NAME选项指定的同名目录
# LENGTH_IN_CHAR:VARCHAR类型长度是否以字符为单位(N),可选值:Y/N,1/0


3.2 服务注册

使用root运行dm_serivice_instaler.sh脚本将数据库实例注册为系统服务,方便对数据库实例进行启停操作。脚本命名格式为“DmService$实例名”,如果是使用图形化方式则会自动注册服务

#./dm_serivice_installer.sh -t [服务类型,如dmserver] -dm_ini [配置文件路径,默认是在数据目录中] -p [对应INSTANCE_NAME]

#root执行
/data/dmdbms/script/root/dm_service_installer.sh -t dmserver -dm_ini /data/dmdbms/DAMENG/dm.ini -p DMSERVER


3.3 启动数据库

#启动数据库服务后默认监听5236端口
systemctl start DmServiceTEST_DB

#如果没有注册服务,也可以通过命令行进行管理
./bin/DmServiceDMSERVER start | stop #DmServiceDMSERVER需要修改为实际的实例名,可以进入目录查找

#或者指定配置文件直接启动
nohup ./bin/dmserver /data/dmdbms/5238/DAMENG/dm.ini &


3.4 卸载数据库

数据库是卸载通过root用户执行./uninstall.sh 脚本完成

文章评论

猜你喜欢

国产数据库 达梦数据库教程(15)SQL跟踪日志与慢查询日志

达梦数据库教程(15)SQL跟踪日志与慢查询日志
达梦数据库教程(15)SQL跟踪日志与慢查询日志
达梦数据库教程(15)SQL跟踪日志与慢查询日志
达梦数据库教程(15)SQL跟踪日志与慢查询日志

一、达梦跟踪日志达梦数据库跟踪日志即trace log,是数据库的详细诊断信息文件,包含系统各会话执行的 SQL 语句、参数信息、错误信息、执行时间等,用于排查故障、性能问题或内部错误。1、启用跟踪日...

达梦数据库教程(14)统计信息与执行计划

国产数据库 达梦数据库教程(14)统计信息与执行计划

一、达梦数据库执行计划所有DBMS的执行计划作用基本都是相同的,用于显示一条 SQL 语句在数据库中的执行过程,通过执行计划可以看出SQL影响数据量、是否有使用合理的索引等,有助于SQL优化1、达梦数...

达梦数据库教程(13)如何查找并解决阻塞事务

国产数据库 达梦数据库教程(13)如何查找并解决阻塞事务

一、数据库阻塞的原因当一个数据库提交DML、DDL语句时出现阻塞现象通常有两种情况,一是该语句影响的数据量太多,数据库需要时间来处理,这种情况一般无需处理,等事务正常结束即可;另一种则是被其他事务的锁...

达梦数据库教程(12)守护集群部署与管理

国产数据库 达梦数据库教程(12)守护集群部署与管理

一、达梦数据库守护集群介绍达梦数据库通过守护集群可以实现主备模式或读写分离集群,二者在搭建过程上基本一致,区别在于:· 数据守护集群:通常使用实时归档 + ARCH WAIT APPLY=0 (高性能...

达梦数据库教程(11)达梦数据库授权与版本更新

国产数据库 达梦数据库教程(11)达梦数据库授权与版本更新

一、达梦数据库授权管理1、查询授权查询授权到期时间,如果是永久授权,EXPIRED_DATE 列值是 NULL,AUTHORIZED_CUSTOMER 是用户名称SELECT * ...