Nginx、MySQL开机自启

一 启动服务管理机制 

从CentOS7.x开始,传统的init已经被舍弃,取而代之的是systemd(启动服务管理机制) 

  1.1 systemd的配置文件放置目录

  • /usr/lib/systemd/system:每个服务主要的启动脚本设置(由原本软件提供的设置,不建议修改),类似/etc/init.d/下文件
  • /run/systemd/system:系统执行过程中产生的服务脚本,优先级大于上面的
  • /etc/systemd/system:管理员根据主机系统的需求建立的执行脚本,优先级max

  1.2 配置文件详解

参考下面配置文件,大体上将整个设置分为三个部分

  • [Unit]:其他daemon设置,Unit为通用术语,表示系统中各种可管理的对象 (target为一组unit集合)
  • [Service]:不同unit类型设置不同的项目,这个项目主要规范服务启动脚本、环境配置文件名、重启方式
  • [Install]:将此Unit安装到那个target里面去,在systemd中,安装(install)是指将unit文件复制到特定目录,以便systemd能够管理它
 cat /usr/lib/systemd/system/sshd.service 

[Unit]
Description=OpenSSH server daemon
Documentation=man:sshd(8) man:sshd_config(5)
After=network.target sshd-keygen.service
Wants=sshd-keygen.service

[Service]
Type=notify
EnvironmentFile=/etc/sysconfig/sshd
ExecStart=/usr/sbin/sshd -D $OPTIONS
ExecReload=/bin/kill -HUP $MAINPID
KillMode=process
Restart=on-failure
RestartSec=42s

[Install]
WantedBy=multi-user.target

以下是常用的选项: 

[unit]部分
Description使用systemctl status 输入此服务的说明
After说明该unit在哪个daemon启动后启动
[Service]部分
Type=forking传统unit服务属于这种项目,后台运行模式
ExecStart实际执行此deamon的命令或脚本程序,服务启动命令
ExecReload与systemctl stop 的执行有关,服务重启命令
ExecStop与systemctl reload 有关的命令操作,服务停止命令
PrivateTmp=true给服务分配独立的临时空间
[Install]部分
Alias链接别名的意思

二 Nginx、MySQL开机自启 

如果是rpm包安装的直接可以使用systemd进行管理,只针对源码安装的Nginx、MySQL进行开启自启设置

 systemd全部仅有一个systemd服务搭配systemctl命令来处理,无需其他额外命令来支持
主要参数:start、stop、restart、reload、enable、disable、status、is-active、is-enable

  2.1 Nginx开机自启

cd /etc/systemd/system
vim nginx.service

[Unit]
Description=nginx service
After=network.target

[Service]
Type=forking
ExecStart=/usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx.conf
ExecReload=/usr/local/nginx/sbin/nginx -s reload
ExecStop=/usr/local/nginx/sbin/nginx -s quit
PrivateTmp=true

[Install]
WantedBy=multi-user.target

systemctl list-units | grep nginx 

参考优秀文档

  2.2 MySQL开机自启(源码安装启动关闭命令

疑惑之处:一直启动---超过时间就断开了,一直没有启动成功

cd /etc/systemd/system
vim mysql.service

[Unit]
Description=mysql service
After=network.target

[Service]
Type=forking
User=mysql
Group=mysql
ExecStart=/usr/local/mysql/bin/mysqld_safe --defaults-file=/data/mysql/conf/my.cnf 
#ExecStop=/usr/local/mysql/bin/mysqladmin -uroot -p'LXYlxy2:024.#8u}' shutdown
PrivateTmp=true

[Install]
WantedBy=multi-user.target

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值