达梦数据库启动和配置开机自启动

本文介绍了达梦数据库安装后通过三种启动方式:前台交互、服务脚本和系统管理,并详细讲解了配置数据库服务启动、自启动及服务注册的方法。

概述:

        数据库安装完成后启动启动的三种方式

前台启动(这个方式启动会进入一个交互界面,退出界面数据库就会关闭)

[dmdba@dmdb ~/dmdbms/bin]$ ./dmserver /home/dmdba/dm/dmdbms/bin/dm.ini   #指定数据库配置文件
file dm.key not found, use default license!
Global parameter value of RT_HEAP_TARGET is illegal, use min value!
version info: develop
Use normal os_malloc instead of HugeTLB
Use normal os_malloc instead of HugeTLB
DM Database Server x64 V7.6.0.96-Build(2018.09.19-97292)ENT startup…
License will expire in 14 day(s) on 2020-01-24
ckpt lsn: 39244
ndct db load finished
ndct fill fast pool finished
set EP[0]'s pseg state to inactive
iid page’s trxid = 1156
NEXT TRX ID = 1157
pseg recv finished
nsvr_startup end.
aud sys init success.
aud rt sys init success.
systables desc init success.
ndct_db_load_info success.
nsvr_process_before_open begin.
nsvr_process_before_open success.
SYSTEM IS READY

配置数据库服务启动脚本(在安装目录/bin/service_template目录下名字为:DmService)

#把DmService 服务脚本移动到bin目录下
root@data-2-3:/home/dmdba/dm/dmdbms/bin# cp service_template/DmService  dmserverd

#修改DmService 脚本
INI_PATH="/home/dmdba/dm/dmdbms/bin/dm.ini"

#启动数据库命令
./dmserverd start


#重启数据库命令
./dmserverd restart

#停止数据库命令
./dmserverd stop

托管给系统system 管理,可配置开机自启(需要使用 root 用户)

root@data-2-3:/home/dmdba/dm/dmdbms/script/root # ./dm_service_installer.sh -h #查看帮助

root@data-2-3:/home/dmdba/dm/dmdbms/script/root # ./dm_service_installer.sh -t dmserver -p dm -dm_ini /home/dmdba/dm/dmdbms/bin/dm.ini     #1、在dm7和dm8中参数是不一样的  看帮助说明   

# 注:在一些系统中注册了服务,重启服务器后dmap服务和数据库实例启动不了需要在配置文件中添加Restart=always

vim  /lib/systemd/system/DmServicedm.service 
#在文件中添加
Restart=always

更多内容可访问达梦官方社区地址:https://eco.dameng.com

### 问题分析 在麒麟V10操作系统上启动达梦数据库失败,可能涉及多个方面的原因,包括但不限于配置错误、权限问题、服务未正确安装或数据库文件损坏等。以下是常见的失败原因及对应的解决方法。 ### 常见启动失败原因及解决方法 #### 1. **服务未正确安装或未设置开机** 在安装达梦数据库时,若未正确执行服务安装脚本或未使用 `-p` 参数指定服务名称标识,可能导致服务未注册成功。例如,在执行 `dm_service_installer.sh` 脚本时,需确保命令格式正确,如: ```bash ./dm_service_installer.sh -t dmserver -dm_ini /opt/dmdbms/data/DAMENG/dm.ini -p DMSERVER ``` 若服务未注册成功,则无法通过 `systemctl` 启动。此时应重新执行安装脚本并确保参数完整,特别是 `-p` 参数[^2]。 #### 2. **数据库配置文件路径错误或内容不正确** 启动达梦数据库依赖 `dm.ini` 配置文件。若该文件路径错误或配置项(如 `INSTANCE_NAME`、`PORT_NUM`、`PATH` 等)设置不当,可能导致数据库启动失败。应检查 `dm.ini` 文件路径是否与安装脚本中指定的一致,并确保配置内容正确。 #### 3. **数据库文件权限不足** 达梦数据库启动时需要访问数据文件日志文件。若相关目录(如 `/opt/dmdbms/data/DAMENG`)的权限未正确设置,可能导致启动失败。应确保数据库服务运行用户对数据目录具有读写权限,可通过以下命令修改权限: ```bash chown -R dmuser:dmuser /opt/dmdbms/data/DAMENG chmod -R 755 /opt/dmdbms/data/DAMENG ``` 其中 `dmuser` 为达梦数据库的运行用户。 #### 4. **数据库处于异常关闭状态** 若数据库上次关闭时未正常退出,可能导致实例状态异常。此时可尝试使用达梦提供的工具进行修复,例如执行 `dmrman` 工具恢复数据库状态: ```bash dmrman CTLSTMT="RECOVER DATABASE '/opt/dmdbms/data/DAMENG/dm.ini'" ``` 该命令将尝试恢复数据库至一致性状态。 #### 5. **端口冲突或监听地址配置错误** 达梦数据库默认使用端口 `5236`,若该端口被其他服务占用,或监听地址配置错误(如绑定到 `127.0.0.1` 而非 `0.0.0.0`),可能导致连接失败。应检查端口占用情况,并确认 `dm.ini` 文件中的 `PORT_NUM` `LISTEN_IP` 配置正确。 #### 6. **未开启归档模式导致恢复失败** 如果数据库处于归档模式下,并且归档日志文件缺失或损坏,可能导致启动失败。在启动失败的情况下,应检查归档日志路径是否正确,并确保归档日志文件完整。 ### 启动达梦数据库的常用命令 启动服务的命令如下: ```bash systemctl start DmServiceDMSERVER ``` 设置开机的命令如下: ```bash systemctl enable DmServiceDMSERVER ``` ###
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值