Linux (Unix)平台DM8服务脚本使用介绍

DM8 Linux 服务脚本介绍

在 Linux(Unix)系统中,很多程序的进程是以后台运行的方式启动的,进程以后台方式运行能够保证进程不因终端窗口的关闭而关闭,而且这些进程大多是常驻的,需要长期运行且不中断的。DM 中也有许多这样的程序,这些程序的稳定运行保证了 DM 数据库实例或 DM 集群的正常运行,这些程序就是 DM 服务程序。为了方便用户能够使 DM 服务程序以后台运行的方式启动,DM 服务程序提供了对应的服务脚本模板。

  1. DM 服务脚本

DM 提供了 14 个服务脚本模板,分为两类:

第一类 位于 bin 目录下,不支持修改模板名称的脚本。分别为:DmAPService 服务、DmAuditMonitor 服务、DmJobMonitor 服务、DmInstanceMonitor 服务。

第二类 位于 bin/service_template 目录下,支持修改模板名称的脚本。分别为:DmServer 服务、DmWatchService 服务、DmMonitorService 服务、DmASMSvrService 服务、DmCSSService 服务、DmCSSMonitorService 服务、DmDRSService 服务、DmDRASService 服务、DmDCSService 服务、DmDSSService 服务。

  1. 服务数量管理

不同的脚本服务可运行的数量各不相同。下面分别进行介绍:

第一类服务脚本模板对应的 DM 服务程序,一个 DM 系统只需要运行一个。

第二类服务脚本模板对应的 DM 服务程序,每一种进程均可在同一物理机器上运行一个或多个,同样一台物理机器也可以运行多种服务脚本。用户可以将第二类服务脚本模板拷贝到其他目录,并修改脚本名称。建议用户将服务脚本模板名称作为新服务脚本名称的前缀。

  1. 服务脚本参数修改

用户在使用这些服务脚本前,需要先手动修改服务脚本的参数。

以下将详细讲解各种服务脚本需要设置的参数。

  • DmAPService

达梦数据库辅助插件服务。dmap 对应的服务脚本模板,不需要修改脚本参数。DmAPService 服务为单实例,即当前达梦数据库系统只可运行一个 DmAPService 服务。

参数名称

参数说明

DMAP_INI_PATH

服务脚本所需要的 ini 文件路径,即 dmap.ini 文件路径

IS_DISABLED

是否禁用服务脚本,是指为 true 则禁用此脚本

SAVE_PROC_OUT

是否在脚本服务日志文件中记录脚本服务运行过程中产生的日志。TRUE:是;FALSE:否。缺省为 FALSE

  • DmAuditMonitor

达梦数据库实时审计监控服务。dmamon 对应的服务脚本模板,DmAuditMonitor 服务为单实例,即当前达梦数据库系统只可运行一个 DmAuditMonitor 服务。

参数名称

参数说明

SAVE_PROC_OUT

是否在脚本服务日志文件中记录脚本服务运行过程中产生的日志。TRUE:是;FALSE:否。缺省为 FALSE

  • DmService

达梦数据库实例服务。dmserver 对应的服务脚本模板,一台物理主机可以运行多个 dmserver 实例,同样一台物理主机也可以运行多个 dmserver 的服务脚本。用户可以将服务脚本模板拷贝到其他目录,并修改脚本名称。

注意建议用户将DmService作为新服务脚本的名称前缀。

参数名称

参数说明

INI_PATH

服务脚本所需要的 ini 文件路径,即 dm.ini 文件路径

DCR_INI_PATH

服务脚本所需要的 ini 文件路径,即 dmdcr.ini 文件路径

START_MODE

服务启动模式,即 dmserver 启动模式,参数为 open 和 mount

IS_DISABLED

是否禁用服务脚本,是指为 true 则禁用此脚本

SAVE_PROC_OUT

是否在脚本服务日志文件中记录脚本服务运行过程中产生的日志。TRUE:是;FALSE:否。缺省为 FALSE

  • DmWatcherService

达梦数据库数据守护服务(V4.0)。dmwatcher 对应的服务脚本模板。

参数名称

参数说明

INI_PATH

服务脚本所需要的 ini 文件路径,即 dmwatcher.ini 文件路径

IS_DISABLED

是否禁用服务脚本,是指为 true 则禁用此脚本

SAVE_PROC_OUT

是否在脚本服务日志文件中记录脚本服务运行过程中产生的日志。TRUE:是;FALSE:否。缺省为 FALSE

  • DmMonitorService

达梦数据库数据守护监视器服务(V4.0)。dmmonitor 对应的服务脚本模板。

参数名称

参数说明

INI_PATH

服务脚本所需要的 ini 文件路径,即 dmmonitor.ini 文件路径

IS_DISABLED

是否禁用服务脚本,是指为 true 则禁用此脚本

SAVE_PROC_OUT

是否在脚本服务日志文件中记录脚本服务运行过程中产生的日志。TRUE:是;FALSE:否。缺省为 FALSE

  • DmASMSvrService

达梦数据库集群同步服务。dmasmsvr 对应的服务脚本模板。

参数名称

参数说明

DCR_INI_PATH

服务脚本所需要的 ini 文件路径,即 dmdcr.ini 文件路径

IS_DISABLED

是否禁用服务脚本,是指为 true 则禁用此脚本

SAVE_PROC_OUT

是否在脚本服务日志文件中记录脚本服务运行过程中产生的日志。TRUE:是;FALSE:否。缺省为 FALSE

  • DmCSSService

达梦数据库集群同步监控服务。dmcss 对应的服务脚本模板。

参数名称

参数说明

DCR_INI_PATH

服务脚本所需要的 ini 文件路径,即 dmdcr.ini 文件路径

DFS_INI_PATH

服务脚本所需要的 ini 文件路径,即 dmdfs.ini 文件路径

IS_DISABLED

是否禁用服务脚本,是指为 true 则禁用此脚本

SAVE_PROC_OUT

是否在脚本服务日志文件中记录脚本服务运行过程中产生的日志。TRUE:是;FALSE:否。缺省为 FALSE

  • DmCSSMonitorService

达梦数据库自动存储管理器服务。dmcssm 对应的服务脚本模板

参数名称

参数说明

INI_PATH

服务脚本所需要的 ini 文件路径,即 dmcssm.ini 文件路径

IS_DISABLED

是否禁用服务脚本,是指为 true 则禁用此脚本

SAVE_PROC_OUT

是否在脚本服务日志文件中记录脚本服务运行过程中产生的日志。TRUE:是;FALSE:否。缺省为 FALSE

  • DmDRSService

分布式日志服务器服务。dmdrs 对应的服务脚本模板。

参数名称

参数说明

INI_PATH

服务脚本所需要的 ini 文件路径,即 drs.ini 文件路径

IS_DISABLED

是否禁用服务脚本,是指为 true 则禁用此脚本

SAVE_PROC_OUT

是否在脚本服务日志文件中记录脚本服务运行过程中产生的日志。TRUE:是;FALSE:否。缺省为 FALSE

  • DmDCSService

分布式目录服务器服务。dmdcs 对应的服务脚本模板。

参数名称

参数说明

INI_PATH

服务脚本所需要的 ini 文件路径,即 dcs.ini 文件路径

SERVER

需要连接的数据库信息(IP:PORT)

IS_DISABLED

是否禁用服务脚本,是指为 true 则禁用此脚本

SAVE_PROC_OUT

是否在脚本服务日志文件中记录脚本服务运行过程中产生的日志。TRUE:是;FALSE:否。缺省为 FALSE

  • DmDSSService

分布式存储服务器服务。dmdss 对应的服务脚本模板。

参数名称

参数说明

INI_PATH

服务脚本所需要的 ini 文件路径,即 dss.ini 文件路径

IS_DISABLED

是否禁用服务脚本,是指为 true 则禁用此脚本

SAVE_PROC_OUT

是否在脚本服务日志文件中记录脚本服务运行过程中产生的日志。TRUE:是;FALSE:否。缺省为 FALSE

  • DmDRASService

分布式日志归档服务器服务。dmdras 对应的服务脚本模板。

参数名称

参数说明

INI_PATH

服务脚本所需要的 ini 文件路径,即 dras.ini 文件路径

IS_DISABLED

是否禁用服务脚本,是指为 true 则禁用此脚本

SAVE_PROC_OUT

是否在脚本服务日志文件中记录脚本服务运行过程中产生的日志。TRUE:是;FALSE:否。缺省为 FALSE

  1. 服务使用命令

服务脚本支持的命令包括:

start|stop|status|condrestart|restart

以下内容将以服务脚本 DmServiceDMSERVER 为示例。

  • start

启动服务命令,启动命令如下:

./DmServiceDMSERVER start

启动服务成功,将打印 [ok] 字样。如果服务启动失败,将打印 [cancel]字样,并打印启动服务失败的详细信息。

  • stop

停止服务命令,停止命令如下:

./DmServiceDMSERVER stop

停止服务成功,将打印 [ok] 字样。

注意如果服务停止失败,服务脚本将循环去关闭服务进程,服务脚本不会主动强杀服务进程,此时需要用户手动停止服务进程。
  • status

查询服务状态,查询命令如下:

./DmServiceDMSERVER status
##打印信息如下
##服务DmServiceDMSERVER正在运行
DmServiceDMSERVER (pid pid_num) is running...
##服务DmServiceDMSERVER已停止
DmServiceDMSERVER is stopped
##服务DmServiceDMSERVER已停止,但PID文件还存在
DmServiceDMSERVER dead but pid file exists
  • restart

重启服务命令,重启命令如下:

./DmServiceDMSERVER restart
##启服务命令等同于
./DmServiceDMSERVER stop
./DmServiceDMSERVER start
  1. condrestart

condrestart 也属于重启命令,但增加了确认条件。如果服务正在运行,等同于 restart 命令。如果服务没有在运行,打印消息如下:

DmServiceDMSERVER service is not running.
  1. 脚本服务日志

以脚本启动的服务日志记录在/log 目录下的日志文件中。

根据不同的阶段,产生的日志分为两种情况:

一 各服务在启动和停止过程中产生的日志,均存储在/log 目录下的 dmsvc.log(Windows)或 dmsvc_sh.log(Linux)中。

二 各服务在运行过程中产生的日志,分别存储在/log 目录下各自对应的日志文件中。各脚本服务命名规则为:服务名.log。例如:DmAPService.log、DmServiceDMSERVER.log 等。为了防止日志过大,可通过 SAVE_PROC_OUT 脚本参数设置脚本服务运行过程中产生的日志是否记录在日志文件中。

  1. 注册与卸载服务

在现实使用环境中,如果 Linux(Unix)系统重启,用户希望在操作系统启动时能够自动启动某些应用程序的进程。为了达到这种功能就必须为这些应用程序编写服务脚本,并注册成操作系统服务。在以上的内容,已经讲解了 DM 所提供的服务脚本种类,参数修改和使用说明。以下内容将详细讲解把 DM 服务脚本注册成操作系统服务的方法。

  • 使用脚本注册服务

DM 提供了将 DM 服务脚本注册成操作系统服务的脚本,同时也提供了卸载操作系统服务的脚本。注册和卸载脚本文件所在目录为安装目录的“/scripts/root”子目录下。

注册服务脚本为 dm_service_installer.sh,用户可以使用注册服务脚本将服务脚本注册成为操作系统服务,命令参数如下所示:

标志

参数

说明

-t

服务类型

注册服务类型,支持一下服务类型:dmap、 dmamon、dmserver 、dmwatcher、dmmonitor 、dmasmsvr 、dmcss 、dmcssm、dmdrs、dmdras、dmdcs、dmdss。

-p

服务名后缀

指定服务名后缀,生成的操作系统服务名为“服务脚本模板名称 + 服务名后缀”。此参数只针对 dmserver 、dmwatcher、dmmonitor 、dmasmsvr 、dmcss 、dmcssm、dmdrs、dmdras、dmdcs、dmdss 服务脚本生效。

-dm_ini

INI 文件路径

指定服务所需要的 dm.ini 文件路径。

-watcher_ini

INI 文件路径

指定服务所需要的 dmwatcher.ini 文件路径。

-monitor_ini

INI 文件路径

指定服务所需要的 dmmonitor.ini 文件路径。

-dcr_ini

INI 文件路径

指定服务所需要的 dmdcr.ini 文件路径。

-cssm_ini

INI 文件路径

指定服务所需要的 dmcssm.ini 文件路径。

-dss_ini

INI 文件路径

指定服务所需要的 dss.ini 文件路径。

-drs_ini

INI 文件路径

指定服务所需要的 drs.ini 文件路径。

-dras_ini

INI 文件路径

指定服务所需要的 dras.ini 文件路径。

-dcs_ini

INI 文件路径

指定服务所需要的 dcs.ini 文件路径。

-dfs_ini

INI 文件路径

指定服务所需要的 dfs.ini 文件路径。

-server

连接信息

指定服务器连接信息(IP:PORT)

-m

open 或 mount

指定数据库的启动模式 open 或 mount。此参数只针对 dmserver 服务类型生效,可选。

-s

服务脚本文件路径

如果设置此参数则忽略除-y 外的其他所有参数。指定服务脚本全路径

-y

服务名

设置依赖服务,此选项只针对 systemd 服务环境下的 dmserver 和 dmasmsvr 服务生效

-h

-

帮助

  1. 使用方法:

操作之前,需要使用 root 系统用户登录或切换至 root 系统用户。

以下示例为创建数据库实例的系统服务,数据库 dm.ini 所在路径为/opt/dmdbms/data/DAMENG/dm.ini,系统服务后缀为 DMSERVER。

  • 通过指定服务类型注册服务

命令如下:

./dm_service_installer.sh -t dmserver -dm_ini /opt/dmdbms/data/DAMENG/dm.ini -p DMSERVER

注册脚本将注册达梦数据库实例服务 DmServiceDMSERVER。

  • 2. 通过服务脚本文件注册服务

如果已存在修改完成的服务脚本模板。用户可通过此服务脚本文件注册操作系统随机启动服务。

命令如下:

./dm_service_installer.sh -s /opt/dmdbms/bin/DmServiceDMSERVER
  1. 手动注册服务

在 Linux(Unix)系统中,init.d 和 systemd 是最常见的系统服务环境。下面以 dmserver(DmServcie)服务为例,将讲解在不同系统服务环境中手动注册服务的方法。

  • init.d 环境

以下步骤将以 Red Hat Enterprise Linux 6 for x86-64 系统为例,由于不同操作系统系统命令不尽相同,具体步骤及操作请以本机系统为准,具体细节可向系统管理员咨询。

拷贝服务模板文件(DmService)到系统服务目录(/etc/rc.d/init.d),并将新文件命名为 DmServiceDMSERVER。

cp /opt/dmdbms/bin/service_template/DmService
/etc/rc.d/init.d/DmServiceDMSERVER
chmod 755 /etc/rc.d/init.d/DmServiceDMSERVER

修改服务脚本(/etc/rc.d/init.d/DmServiceDMSERVER)配置。

##修改DmServiceDMSERVER
INI_PATH=INI路径

创建启动服务的连接

ln -s /etc/rc.d/init.d/DmServiceDMSERVER /etc/rc.d/rc0.d/K02DmServiceDMSERVER
ln -s /etc/rc.d/init.d/DmServiceDMSERVER /etc/rc.d/rc1.d/K02DmServiceDMSERVER
ln -s /etc/rc.d/init.d/DmServiceDMSERVER /etc/rc.d/rc2.d/S98DmServiceDMSERVER
ln -s /etc/rc.d/init.d/DmServiceDMSERVER /etc/rc.d/rc3.d/S98DmServiceDMSERVER
ln -s /etc/rc.d/init.d/DmServiceDMSERVER /etc/rc.d/rc4.d/S98DmServiceDMSERVER
ln -s /etc/rc.d/init.d/DmServiceDMSERVER /etc/rc.d/rc5.d/S98DmServiceDMSERVER
ln -s /etc/rc.d/init.d/DmServiceDMSERVER /etc/rc.d/rc6.d/K02DmServiceDMSERVER

启动停止服务。

##停止服务
service DmServiceDMSERVER stop
##启动服务
service DmServiceDMSERVER start
  1. systemd 环境

以下步骤将以 Red Hat Enterprise Linux 7 for x86-64 系统为例,由于不同操作系统系统命令不尽相同,具体步骤及操作请以本机系统为准,具体细节可向系统管理员咨询。

拷贝服务模板文件(DmService)到目录(/opt/dmdbms/bin),并将新文件命名为 DmServiceDMSERVER。

cp /opt/dmdbms/bin/service_template/DmService
/opt/dmdbms/bin/DmServiceDMSERVER
chmod 755 /opt/dmdbms/bin/DmServiceDMSERVER
  • 修改服务脚本(/opt/dmdbms/bin/DmServiceDMSERVER)配置。

##修改DmServiceDMSERVER
INI_PATH=INI路径
  • 创建系统服务配置文件(/usr/lib/systemd/system/DmServiceDMSERVER.service)。文件内容,如下所示:

[Unit]
Description=DmServiceDMSERVER
After=network.target remote-fs.target
[Service]
Type=forking
PIDFile=/opt/dmdbms/bin/pids/DmServiceDMSERVER.pid
ExecStart=/opt/dmdbms/bin/DmServiceDMSERVER start
ExecStop=/opt/dmdbms/bin/DmServiceDMSERVER stop
PrivateTmp=true
[Install]
WantedBy=multi-user.target
  • 在使用服务前,需要启用服务。相关命令如下所示:

##启用服务
systemctl enable DmServiceDMSERVER
##停止服务
systemctl stop DmServiceDMSERVER
##启动服务
systemctl start DmServiceDMSERVER
  1. 卸载服务

服务卸载脚本文件为 dm_service_uninstaller.sh。用户可以使用服务卸载脚本删除已经注册成操作系统服务的 DM 服务脚本,参数如下表:

标志

参数

说明

-n

服务名

指定服务名,删除指定的操作系统随机启动服务

-h

-

帮助

使用方法:

操作之前,需要使用 root 系统用户登录或切换至 root 系统用户。

删除指定的操作系统服务。假设存在 DM 的操作系统随机启动服务 DmServiceDMSERVER,命令如下:

./dm_service_uninstaller.sh -n DmServiceDMSERVER

达梦学习社区:https://eco.dameng.com

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值