一、删除服务的前置准备与流程

1.1 删除服务整体流程图

在进行任何破坏性操作前,先通过流程图了解 DM 删除数据库服务的完整步骤,确保操作安全可控。

Linux

Windows

开始删除DM数据库服务

检查服务状态与依赖

停止目标DM服务

选择操作系统

执行 dm_service_installer.sh -del

使用服务管理器或 sc delete

验证服务状态

清理残留文件与端口

完成删除操作

1.2 确认服务状态与依赖

在执行 DM 删除数据库服务之前,必须明确当前系统中运行的 DM 实例状态。使用 ps -ef | grep dmserver 命令查看进程,或通过 DM 管理工具连接数据库,确认无活动事务和外部应用连接。如果有其他业务系统依赖于该数据库,请提前通知相关业务线进行切换或停机,避免因服务突然删除导致业务中断。

1.3 备份关键数据与配置文件

即使删除服务只是为了重构,也务必对核心数据进行全量备份。需备份的内容包括但不限于 dm.ini 配置文件、控制文件、数据文件以及归档日志。建议使用 dmrman 工具进行冷备,或者直接将整个数据目录打包压缩,确保在发生误操作时能够快速恢复。

1.4 停止目标数据库服务

删除服务前必须先停止对应的 DM 服务。在 Linux 环境下,可以切换到 dmdba 用户,执行 systemctl stop DmServicedm.ini 或者通过 ./DmServiceDMSERVER stop 脚本停止服务。在 Windows 环境下,可以通过 "服务" 管理器找到对应的 DM 服务并点击 "停止"。确认服务状态为 "已停止" 后才能进行下一步操作。

二、删除数据库服务的具体方法

2.1 Linux 环境下使用脚本删除服务

达梦数据库在 Linux 环境中提供了 dm_service_installer.sh 脚本用于服务管理。进入 DM 安装目录的 /script/root 子目录,执行以下命令删除服务:

./dm_service_installer.sh -del DmServiceDMSERVER

如果提示权限不足,请使用 root 用户执行。此脚本会自动清理 /etc/systemd/system/ 下的服务配置文件,并将服务从系统服务列表中移除。

2.2 Windows 环境下移除系统服务

在 Windows 系统中,DM 数据库服务通常通过安装程序注册。可以通过以下两种方式删除:

  1. 使用 "服务" 管理器: 按 Win + R 输入 services.msc,找到对应的 DM 服务,右键选择 "属性",记录服务名称。
  2. 使用命令行: 以管理员身份运行 cmd,执行 sc delete "服务名称" 命令。例如: sc delete DmServiceDMSERVER

2.3 验证服务是否成功删除

执行删除操作后,必须进行验证。在 Linux 系统中,执行 systemctl list-unit-files | grep Dm 查看是否还有残留的服务单元。在 Windows 系统中,再次打开 services.msc 检查服务列表。若列表中已不存在对应的 DM 服务,则说明删除成功。同时可以使用 ps -ef | grep dm 或任务管理器确认相关进程已彻底退出。

三、残留文件清理与常见问题排查

3.1 清理安装目录与残留进程

服务删除并不等于卸载数据库软件。如果确认不再使用该数据库实例,需手动删除对应的数据目录和实例目录。检查 dm.ini 中配置的路径,使用 rm -rf /dmdata/data/实例名 删除数据文件。若发现有未被杀掉的僵尸进程,可通过 kill -9 进程号 强制结束。

3.2 端口占用排查与解决

有时服务删除后,原数据库占用的端口(如默认的 5236)仍未释放,导致新服务无法启动。使用 netstat -tunlp | grep 5236 检查端口占用情况。如果发现有进程占用,需根据 PID 查找进程详情并强制结束。若端口仍不释放,可等待系统回收或重启服务器。

3.3 服务删除常见报错与对策

在执行 DM 删除数据库服务 时,可能会遇到以下问题:

  1. "服务正在运行无法删除": 请确保已完全停止服务和相关进程。
  2. "权限拒绝": Linux 下必须使用 root 用户执行服务删除脚本,Windows 下需以管理员身份运行命令提示符。
  3. "找不到服务名": 请核对实际注册的服务名称,注意大小写敏感问题。可以通过服务列表或系统命令重新确认准确的名称。
Logo

openEuler 是由开放原子开源基金会孵化的全场景开源操作系统项目,面向数字基础设施四大核心场景(服务器、云计算、边缘计算、嵌入式),全面支持 ARM、x86、RISC-V、loongArch、PowerPC、SW-64 等多样性计算架构

更多推荐