首页 > 其他分享 >openGauss开机自启动

openGauss开机自启动

时间:2024-03-14 17:58:53浏览次数:22  
标签:服务 target -- 开机 自启动 openGauss data opengauss

openGauss 开机自启动

在 centos7.6 操作系统上设置 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

openGauss 单机自启动 模版

配置自定义服务

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

[Unit]
Description=openGauss
Documentation=openGauss 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 opengauss
systemctl start opengauss
systemctl status opengauss
systemctl stop opengauss

openGauss 集群自启动 模版

配置自定义服务

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

[Unit]
Description=openGauss
Documentation=openGauss 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 opengauss_om
systemctl start opengauss_om
systemctl status opengauss_om
systemctl stop opengauss_om

标签:服务,target,--,开机,自启动,openGauss,data,opengauss
From: https://www.cnblogs.com/renxyz/p/18073579

相关文章

  • openGauss与postgresql日常使用差异
    openGauss与postgresql日常使用差异密码加密postgresql默认密码加密方式是md5。openGauss默认密码加密方式是sha256。使用navicate、pgadmin3等客户端开发工具访问og,需要修改加密方式。如果在本地用用户名密码登陆数据库没问题。但是用其他工具连接数据......
  • PostgreSQL与openGauss之分区性能
    PostgreSQL与openGauss之分区性能概述PostgreSQL与openGauss分区表定义差异,请参考https://www.modb.pro/db/41393。openGauss1.1.0开始支持hash/list分区,hash分区表最多支持64个分区,否则会报:ERROR:Un-supportfeatureDETAIL:Thepartition’slengthshouldbe......
  • PostgreSQL与openGauss之关键字
    PostgreSQL与openGauss之关键字日常数据库运维的过程中可能对数据库关键字关注点并不是很高,但在程序开发的过程中,数据库对象建模要尽可能的避开数据库关键字的使用,否则在后续开发过程中需要用到各种转译的方法来将关键字转换为普通字符,会非常的麻烦。最近在openGauss上执行......
  • openGauss分区使用样例
    openGauss分区使用样例概述openGauss1.1.0版本开始,分区方式分为三种,分别是RANGE、HASH和LIST,官方文档中对于分区表的使用样例比较少,这里对各种分区使用方式做一下整理,方便以后快速调整使用。范围分区VALUESLESSTHAN语法格式分区策略的分区键最多支持4列分区键支持......
  • openGauss行存与列存
    openGauss行存与列存列存表限制列存表不支持数组。列存表的数量建议不超过1000个。列存表的表级约束只支持PARTIALCLUSTERKEY,不支持主外键等表级约束。列存表的字段约束只支持NULL、NOTNULL和DEFAULT常量值。列存表不支持alter命令修改字段约束。列存表支持......
  • openGauss监控之exporter部署
    openGauss监控之exporter部署概述opengauss_exporter是为openGauss数据库量身打造的数据采集工具,配合当前最受欢迎的监控报警框架prometheus+grafana组合实时展示数据库信息,为openGauss数据库的平稳运行保驾护航。opengauss_exporter同openGauss数据库一样是开源......
  • MogDB openGauss 角色切换后sequence为什么不连续
    本文出处:https://www.modb.pro/db/569272背景今天在客户现场做高可用切换测试,为了验证数据库节点角色切换后无数据丢失,我单独创建一张使用了自增sequence的表,通过vip方式访问数据库,并1s插入一条数据。因为数据库本身是通过benchmarksql工具加压的,数据库服务器的CPU使......
  • MogDB openGauss wal日志解析工具 mog_xlogdump
    MogDB/openGausswal日志解析工具mog_xlogdump本文出处:https://www.modb.pro/db/398124概述mog_xlogdump是云和恩墨独立开发的wal日志离线解析工具。熟悉PG的小伙伴应该都使用pg_xlogdump/pg_waldump查看过PG数据库的wal文件,解析的wal数据结果是没有办法直接拿......
  • MogDB-openGauss default privileges 使用方法
    MogDB/openGaussdefaultprivileges使用方法权限是用户访问数据库对象的首要条件,每个新增用户默认属于PUBLIC角色组成员,也就是具有PUBLIC角色组的权限,但在日常业务使用中,仅仅具有PUBLIC权限是远远不够的,还需要具有额外的权限,在MogDB/openGauss数据库支持的业务中经常需......
  • openGauss 由于RemoveIPC未关闭导致数据库crash
    openGauss由于RemoveIPC未关闭导致数据库crashsemop引发的数据库crash--主库FATAL:semop(id=xxxxx)failed:IdentifierremovedFATAL:semctl(xxxxxx,11,SETVAL,0)failed:Invalidargument--备库FATAL:semctl(xxxxxx,11,SETVAL,0)failed:InvalidargumentLOG......