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. SpringCloudStream消息驱动

    1. 基本介绍 官方文档: https://spring.io/projects/spring-cloud-stream#learn 背景: 在一般的大型项目中,或者分布式微服务结构的系统里,一般都会 ...

  2. 牛客“迎新春,过大年”多校程序设计竞赛A题

    题目描述: 这里有个小trick 当时也看到数据范围的问题了 \(n是1e6 \quad \sum_{i=1}^na[i]<=5e7\) 我们考虑不同的数\(1 \quad 2 \quad .. ...

  3. redis开启多端口

    Centos安装多端口的redis服务 背景 redis默认端口6379,由于开发需要,key有重复.于是另起端口6380. 配置服务过程 1.新建/etc/redis6380.conf,内容如下: ...

  4. 读书笔记:CSAPP 11章 网络编程

    深入理解计算机系统 第11章 本章代码:Index of /afs/cs/academic/class/15213-f15/www/code/22-netprog2 其中包含本章课本示例代码,测试 T ...

  5. C# DiagnosticSource and DiagnosticListener

    class Program { private static readonly DiagnosticSource testDiagnosticListener = new DiagnosticList ...

  6. docker部署文件

  7. Windows下写脚本无法运行在linux上?怎麽办?

    Windows下写脚本无法运行在linux上?怎麽办? $'\r': command not found的解决方法 在Linux系统中,运行Shell脚本,出现了如下错误: one-more.sh: ...

  8. APP备案通知

    截至2024年4月1日前,所以已上市APP均需备案,未备案的可以登陆云擎官网进行备案. 关于工信部开展在中华人民共和国境内从事互联网信息服务的APP主办者,应当依法履行备案手续,未履行备案手续的,不得 ...

  9. KingbaseES 数据库安装报错案例分析

    Linux系统安装V008R006C007B0012版本KingbaseES数据库报错:Unsupported major.minor version 52.0 系统版本: [root@vm-10-3 ...

  10. KingbaseES 分区表与 Oracle 分区表对于空值的处理差异

    一.对于null 值处理 1.Oracle 分区字段允许为空,只要存在maxvalue 分区,值就可以插入. SQL> create table t1(id number,data varcha ...