MogDB/openGauss 开机自启动

在 centos7.6 操作系统上设置 MogDB/openGauss 开机自启动,我们先来了解一下自定义服务的配置文件组成部分,共分为[Unit]、[Service]、[Install]三个部分。

[Unit]

Description= 当前服务的简单描述

Documentation= 服务配置文件的位置

Before= 在某服务之前启动

After= 在某服务之后启动

Wants= 与某服务存在“依赖”关系,依赖服务退出,不影响本服务运行

Requires= 与某服务存在“强依赖”关系,依赖服务故障,本服务也随之退出

[Service]

Type=

--simple(默认值):ExecStart字段启动的进程为主进程。

--forking:ExecStart字段将以fork()方式启动,后台运行。

--oneshot:类似于simple,只执行一次,Systemd会等它执行完,才启动其他服务。

--dbus:类似于simple,等待D-Bus信号后在启动。

--notify:类似于simple,启动结束后会发出通知信号,Systemd再启动其他服务。

--idle:类似于simple,等其他任务都执行完,才会启动该服务。

User= 服务运行的用户

Group= 服务运行的用户组

ExecStart= 启动服务的命令,可以是可执行程序、系统命令或shell脚本,必须是绝对路径。

ExecReload= 重启服务的命令,可以是可执行程序、系统命令或shell脚本,必须是绝对路径。

ExecStop= 停止服务的命令,可以是可执行程序、系统命令或shell脚本,必须是绝对路径。

ExecStartPre= 启动服务之前执行的命令

ExecStartPost= 启动服务之后执行的命令

ExecStopPost= 停止服务之后执行的命令

PrivateTmp= True表示给服务分配独立的临时空间

KillSignal= 信号量,一般为SIGQUIT

TimeoutStartSec= 启动超时时间

TimeoutStopSec= 停止超时时间

TimeoutSec= 同时设置 TimeoutStartSec= 与 TimeoutStopSec= 的快捷方式

PIDFile= PID文件路径

KillMode= Systemd停止sshd服务方式

--control-group(默认值):所有子进程,都会被杀掉。

--process:只杀主进程。

--mixed:主进程将收到SIGTERM信号,子进程收到SIGKILL信号。

--none:没有进程会被杀掉,只是执行服务的stop命令。

Restart=服务程序退出后,Systemd的重启方式

--no(默认值):退出后不会重启。

--on-success:只有正常退出时(退出状态码为0),才会重启。

--on-failure:只有非正常退出时(退出状态码非0,包括被信号终止和超时),才会重启。

--on-abnormal:只有被信号终止和超时,才会重启。

--on-abort:只有在收到没有捕捉到的信号终止时,才会重启。

--on-watchdog:超时退出,才会重启。

--always:总是重启。

RestartSec= 重启服务之前,需要等待的秒数

RemainAfterExit= yes 进程退出以后,服务仍然保持执行

[Install]

WantedBy=multi-user.target

--WantedBy字段,表示该服务所在的 Targe,target的含义是服务组,表示一组服务

--multi-user.target,表示多用户命令行状态

--graphical.target,表示图形用户状态,它依赖于multi-user.target

MogDB/openGauss 单机自启动 模版

配置自定义服务

--/usr/lib/systemd/system/mogdb.service

[Unit]

Description=MogDB

Documentation=MogDB Server

After=syslog.target

After=network.target

[Service]

Type=forking

User=omm

Group=dbgrp

Environment=PGDATA=/data/opengauss/data

Environment=GAUSSHOME=/data/opengauss/app

Environment=LD_LIBRARY_PATH=/data/opengauss/app/lib

ExecStart=/data/opengauss/app/bin/gaussdb

ExecReload=/bin/kill -HUP $MAINPID

KillMode=mixed

KillSignal=SIGINT

TimeoutSec=0

[Install]

WantedBy=multi-user.target

添加到开机自启动

systemctl daemon-reload

systemctl enable mogdb

systemctl start mogdb

systemctl status mogdb

systemctl stop mogdb

MogDB/openGauss 集群自启动 模版

配置自定义服务

--/usr/lib/systemd/system/mogdb_om.service

[Unit]

Description=MogDB

Documentation=MogDB Server

After=syslog.target

After=network.target

[Service]

Type=forking

User=omm

Group=dbgrp

Environment=GPHOME=/data/opengauss/gausstools

Environment=PGDATA=/data/opengauss/data

Environment=GAUSSHOME=/data/opengauss/app

Environment=LD_LIBRARY_PATH=/data/opengauss/app/lib

ExecStart=/data/opengauss/gausstools/script/gs_om -t start

ExecReload=/bin/kill -HUP $MAINPID

KillMode=mixed

KillSignal=SIGINT

TimeoutSec=0

[Install]

WantedBy=multi-user.target

添加到开机自启动

systemctl daemon-reload

systemctl enable mogdb_om

systemctl start mogdb_om

systemctl status mogdb_om

systemctl stop mogdb_om

MogDB/openGauss 开机自启动的更多相关文章

  1. apache 开机自启动脚本设置

    默认我们源码编译安装apache,是不能使用service这个命令来启动的,通常我们启动的命令是: [root@localhost httpd-2.2.16]# /usr/local/apache2/ ...

  2. VC++ 设置软件开机自启动的方法

    0  概述 软件开机自启动是比较常用的做法,设置方法也有好几种. 1  使用者模式 在"开始菜单"的所有程序中有个"启动"文件夹,可以将需要设置为开机启动的应用 ...

  3. linux下 nginx、php-fpm、mysql 开机自启动

    1.分别为每个编写shell脚本放入/etc/init.d下,添加service服务 2.把每个service服务加入到chkconfig列表 这里我们以php-fpm为例说明下步骤: php-fpm ...

  4. Linux服务开机自启动设置

    Linux中也有类似于Window中的开机自启动服务,主要是通过chkconfig命令来设置.它主要用来更新(启动或停止)和查询系统服务的运行级信息.谨记chkconfig不是立即自动禁止或激活一个服 ...

  5. CentOS 程序开机自启动方法总结

    1.把启动程序的命令添加到/etc/rc.d/rc.local文件中 CentOS系统下管理开机自启动的配置文件是/etc/rc.d/rc.local,所以只需编辑这个文件,在里面加入相应的启动命令即 ...

  6. Centos7下配置Redis开机自启动

    最近在做作业的时候需要用到Redis缓存,由于每次重启服务器都需要重新启动Redis,也是忒烦人,于是就有了这一篇博客,好,废话不多说. 只有两个步骤: 设置redis.conf中daemonize为 ...

  7. 将命令添加到shell脚本中然后设置开机自启动

    例如开机自启动nginx 编写一个脚本 #vi /usr/local/Monitor_nginx.sh #!/bin/bash if [ "$(ps -ef | grep "ngi ...

  8. CentOS7上让Jexus开机自启动

    昨天刚用了一下CentOS7,很自然的就安装了mono和Jexus,用的都是目前最新版mono4.2.2.10和jexus5.8.0 mono和jexus的具体安装方法,园子里已经有了很多教程,这里就 ...

  9. linux添加开机自启动脚本示例详解

    linux下(以RedHat为范本)添加开机自启动脚本有两种方法,先来简单的; 一.在/etc/rc.local中添加如果不想将脚本粘来粘去,或创建链接什么的,则:step1. 先修改好脚本,使其所有 ...

  10. Centos 开机自启动一些软件配置

    CentOS设置服务开机启动的方法   CentOS设置服务开机启动的两种方法 1.利用 chkconfig 来配置启动级别 在CentOS或者RedHat其他系统下,如果是后面安装的服务,如http ...

随机推荐

  1. 【Azure Web Job】Azure Web Job执行Powershell脚本报错 The term 'Select-AzContext' is not recognized as the name

    问题描述 Azure Web Job执行Powershell脚本报错 Select-AzContext : The term 'Select-AzContext' is not recognized ...

  2. 了解 Docker 网络

    本章将会简单地讲述 Docker 中的网络,对于 CNM.Libnetwork 这些,限于笔者个人水平,将不会包含在内. Docker 的四种网络模式 Docker 有 bridge.none.hos ...

  3. 1. JVM体系结构

    1. 前言 作为Java工程师 ,jvm对于 java的重要性不言而喻,但是 我们又对jvm了解多少 Java的跨平台性 java发布的口号 "一处编译到处运行 " 依赖于jvm, ...

  4. golang开发_goroutine在项目中的使用姿势

    很多初级的Gopher在学习了goroutine之后,在项目中其实使用率不高,尤其一些跨语言过来的人,对并发编程理解不深入,可能很多人只知道go func(),或者掌控不够,谨慎一些,尽量少使用或者不 ...

  5. Github无法读取远程仓库

    主页 个人微信公众号:密码应用技术实战 个人博客园首页:https://www.cnblogs.com/informatics/ Git无法访问 今早起来访问Github炸了,Git不能用了,提示: ...

  6. XAF EFCore 示例

    前言 在DEV官方建议创建新的XAF项目推荐选择EFCore时,我也第一时间创建了XAF的EFCore项目,这也是我第一次创建这个类型的项目,之前一直使用XPO,避免不了要对比一下.如果熟悉XPO但不 ...

  7. JS-1基本语法

    初识JavaScript JavaScript是一种运行在客户端的脚本语言 脚本语言:不需要编译,运行过程中由js解释器(js引擎)逐行来进行解释并执行 现在也可以基于Node.js技术进行服务器编程 ...

  8. 在使用sudo apt-get -f install的时候,出现了更换介质的问题-依赖问题

    这四个选项都选上,然后apt-get update 在修补依赖问题,apt-get -f install      就好了

  9. Web service是什么? (转载)

    转载自 : Web service是什么?- 阮一峰的网络日志 作者: 阮一峰 日期: 2009年8月26日 我认为,下一代互联网软件将建立在Web service(也就是"云") ...

  10. ijkplayer编译-RTSP

    1.编译平台和版本 使用操作系统 Ubuntu 18.04 使用ndk版本:android-ndk-r14b-linux-x86_64.zip (使用r17c编译会报错) AS版本:4.2.2 1.1 ...