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

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

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

概述:

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

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

[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

### 启动达梦数据库的步骤 在 CentOS 7.6 上启动达梦数据库 (DM8),可以通过以下方法实现。以下是详细的说明: #### 1. 确认服务状态 首先,确认达梦数据库服务是否已正确配置并处于停止状态。可以使用 `systemctl` 命令来查看服务的状态。 ```bash systemctl status DmService<实例名> ``` 如果服务未运行,则需要手动启动它[^4]。 --- #### 2. 手动启动达梦数据库服务 假设已经创建了一个名为 `DmServicedmdba.service` 的 systemd 服务文件,并将其放置到 `/usr/lib/systemd/system/` 目录下。此时可通过以下命令启动服务: ```bash systemctl start DmServicedmdba.service ``` 成功启动后,还可以开机功能: ```bash systemctl enable DmServicedmdba.service ``` 这一步会创建软链接至 `/etc/systemd/system/multi-user.target.wants/` 下[^4]。 --- #### 3. 验证端口监听情况 确保服务器正在监听默认的达梦数据库端口(通常是 5236)。可以使用以下命令验证端口状态: ```bash netstat -anpt | grep 5236 ``` 如果没有看到任何进程绑定此端口,则可能表示服务未能正常启动或存在其他网络问题[^3]。 --- #### 4. 使用 `disql` 工具测试连接 切换到达梦数据库用户账户(通常为 `dmdba` 或者类似的用户名),尝试通过 `disql` 登录数据库以检验其可用性。 ```bash su - dmdba disql SYSDBA/SYSDBA@localhost:5236 ``` 如果遇到错误提示类似于 “comm_inet_server_connect_port cannot get the address information”,则可能是由于主机名解析失败或者防火墙阻止所致[^3]。 --- #### 5. 调整防火墙设置 为了允许外部访问达梦数据库,默认情况下需开放 TCP 协议下的指定端口号(如 5236)。执行如下指令修改 iptables 或 firewalld 设置: 对于 **firewalld**: ```bash firewall-cmd --add-port=5236/tcp --permanent firewall-cmd --reload ``` 对于传统 **iptables**: ```bash iptables -I INPUT -p tcp --dport 5236 -j ACCEPT service iptables save && service iptables restart ``` 完成以上更改之后再次尝试重新登录数据库[^2]。 --- #### 6. 查看日志排查异常 当发现无法顺利开启服务时,请查阅相关日志记录定位具体原因。主要关注以下几个路径中的文件内容: - 主程序的日志位于 `$DAMENG_HOME/log/dmserver.log` - 错误详情也可能被写入操作系统级别的消息队列里 (`journalctl`) 例如读取最近一段时间内的全部事件信息可输入下面这条语句: ```bash journalctl -xeu DmServicedmdba.service ``` 从中寻找关键字比如 "failed", "error" 来分析根本症结所在[^4]。 --- ### 注意事项 - 如果之前有旧版本残留数据目录结构不兼容新安装包的情况发生的话,建议先备份原有资料再彻底卸载干净后再重头部署一遍最新版产品。 - 对于某些特殊场景而言还涉及到 SELinux 政策调整等问题,在实际操作过程中应视具体情况灵活处理[^1]。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值