达梦数据库一键安装脚本详解
版本历史
版本 | 日期 | 修改内容 |
V1.0 | 2025-06-16 | 1、增加判断,根据达梦安装包不同文件类型来做不同的解压并且挂载 2、修复BUG:如果key文件为空则报错,修复判断逻辑 |
V1.0.1 | 2025-06-17 | 1、增加功能:可以自定义是否开启归档功能以及自定义归档文件目录 2、修复BUG:如果key文件不在脚本设置的路径中,无法更改静默安装配置文件 |
V1.0.2 | 2025-06-18 | 增加功能:可以自定义开启数据库全量以及增量自动备份 |
V1.0.3 | 2025-06-25 | 1、增加功能:可以自定义全量、增量、定时删除上的周几以及备份时间 2、修复BUG:修复没开启归档的时候也会创建对应的归档目录 |
V1.0.4 | 2025-06-26 | 功能增加:数据库安装好后,会自动安装总结 |
V1.0.5 | 2025-07-02 | 修复BUG:修复安装包如果直接是bin的情况下,导致无法识别 |
需要脚本的可以评论区留言
一、脚本概况
本脚本 install_dm_database.sh 用于自动化完成达梦数据库(DM)的安装与配置工作。它集成了系统环境准备、数据库安装包处理、数据库初始化、归档日志开启以及自动备份任务配置等一系列功能,有效简化了达梦数据库的部署流程。
二、脚本功能详细介绍
- 自动创建用户和组
- 可选择是否关闭系统防火墙
- 可自定义系统安装目录以及数据存放目录
- 可自定义是否初始化数据库
- 可自定义是否开启归档及归档目录
- 可自定义数据库定时全备+增量备份+定时删除
- 自动添加达梦数据库为系统服务并开机自启
- 安装后自动总结安装信息,便于统计
三、使用步骤
1、脚本配置
在脚本的用户配置区域,根据实际需求修改以下变量:
# 必填 - DM安装包路径
dmsoft=/root/dm8_20250122_x86_rh7_64.zip
# 必填 - DM安装目录
dmbasedir=/data/dmserver/app
# 必填 - DM数据目录
dmdatadir=/data/dmserver/data
# 必填 - 上传后的DM静默文件安装位置
jmaz=/root/jmaz.xml
# 本机服务器IP
server_ip="127.0.0.1"
2. 系统安全配置
根据需要修改系统安全配置参数:
FIREWALL_ACTION=1 # 1=关闭防火墙,0=不操作防火墙(保持默认)
SELINUX_ACTION=1 # 1=关闭SELinux,0=不操作SElinux(保持默认)
3.静默安装配置
根据实际需求修改 jmaz.xml
静默安装配置参数:
# 数据库核心配置
XML_INIT_DB="y" # 是否初始化数据库 Y/N、y/n,不允许为空
XML_DB_NAME="DAMENG" # 数据库名
XML_INSTANCE_NAME="DMSERVER" # 实例名
XML_PORT_NUM="5236" # 数据库端口
XML_SYSDBA_PWD="Passw0rd@DM" # SYSDBA密码(需包含大小写字母和数字)
XML_SYSAUDITOR_PWD="Passw0rd@DM" # SYSAUDITOR密码(需包含大小写字母和数字)
XML_BLANK_PAD_MODE="0" # 设置空格填充模式,取值范围:0,1,缺省为0
XML_CASE_SENSITIVE="n" # 大小写敏感 (y/n)
XML_CHARSET="1" # 字符集 (0=GB18030, 1=UTF-8, 2代表韩文字符集EUC-KR)
XML_PAGE_SIZE="32" # 页大小 (4/8/16/32)
XML_EXTENT_SIZE="32" # 簇大小 (16/32/64)
XML_LOG_SIZE="2048" # 日志文件大小(MB)
XML_KEY="" # 非必填 - 授权文件位置,不要放压缩名 没有授权文件填写示例:XML_KEY=""
如果没有初始化数据库的话,后面的归档、备份等操作就算开启了也不执行
4、归档配置
根据需要配置数据库归档相关参数:
# 是否数据库开启归档
arch=1 # 1=开启归档,0=不开启(如果不初始化数据库,这里不生效)
# 归档目录,数据库开启归档之后这里才生效
archdir=/data/dmserver/dmarch
5、自动备份配置
根据需要配置自动备份相关参数:
# 是否开启自动备份 周六凌晨一点全备,周日到周五凌晨一点增量备份
# !!!注意:自动备份开启需要数据库开启归档后才可以设置
# !!!注意:增量备份路径会有一个已经备份过的文件,这个文件不要删,增量备份需要基于该文件来备份
# 全量备份任务名称为:bak_full
# 增量备份任务名词为:bak_incr
backup=1 # 1=开启备份,0=不开启(如果不开启归档,这里不生效)
full_bak_path=/data/dmserver/data/DAMENG/bak # 全量自动备份文件路径
inc_bak_path=/data/dmserver/data/DAMENG/inck # 增量自动备份文件路径
# 备份日期配置: 每日对应位值: 周日=1, 周一=2, 周二=4, 周三=8, 周四=16, 周五=32, 周六=64
# 例如:
# 仅周六备份 = 64
# 仅周一备份 = 2
# 周六和周日备份 = 65
# 每天都备份 = 127
full_bak_days=64 # 当前配置: 仅周六备份
full_bak_time=01:00:00 # 全备备份时间
inc_bak_days=63 # 当前配置: 除周六每天增量备份
inc_bak_time=01:00:00 # 增备备份时间
clean_days=15 # 删除十五天前的备份文件(包括全量和全备)
clean_time=00:00:00
6、执行脚本
使用root用户执行脚本
chmod +x install_dm_database1111.sh
./install_dm_database1111.sh
四、使用案例
案例一:全新安装达梦数据库并开启归档和自动备份
- 按照上述步骤完成脚本配置,确保arch=1和backup=1
- 执行脚本,脚本将自动完成系统环境准备、数据库安装、归档日志开启和自动备份任务配置
- 安装完成后,达梦数据库将在指定端口上运行,归档日志将存储在指定的归档目录中,自动备份任务将按照配置时间和路径执行
执行脚本
[root@AAAA ~]# sh install_dm_database.sh
结果如图:
案例二:进安装达梦数据库,不开启归档和自动备份
- 按照上述步骤完成脚本配置,将 arch=0 和 backup=0
- 执行脚本,脚本将自动完成系统环境准备和数据库安装,不进行归档日志开启和自动备份的任务配置
- 安装完成后,达梦数据库将在指定的端口上运行,不启用归档日志和自动备份功能
执行脚本
[root@AAAA ~]# sh install_dm_database.sh
结果如图:
五、注意事项
- 必须使用root权限运行脚本,否则脚本将无法正常执行
- 请确保DM安装包文件存在,并且路径配置正确
- 自动备份功能需要数据库开启归档后才可以设置,请确保 arch=1 时再开启自动备份
- 脚本中的密码需要包含大小写字母和数字,以满足达梦数据库的安全要求
- 脚本执行过程中可能会因为cpu、磁盘空间等原因出现错误,请根据错误信息进行响应的处理