Systemd-控制进程的启动顺序

人活在世界上,快乐和痛苦本就分不清。所以我只求它货真价实。

《黄金时代》, 王小波

# Systemd-控制进程的启动顺序

# 问题描述

问题描述:重启linux系统以后,发现微信公众号的无法提供服务,登录服务器排查,mysql服务正常启动。查看supervisor的日志,发现启动uwsgi进程的时候报错,而且提示是数据库连接错误。考虑到mysql和supervisor都是通过systemctl实现开机自动启动,所以应该是supervisor的启动先于mysql,所以出现了连接失败。

# 解决方式

systemctl可以通过Before和After参数控制进程的启动顺序。

vim /lib/systemd/system/supervisor.service

[Unit]
After=mariadb.service

sudo systemctl daemon-reload

参考资料:

http://www.ruanyifeng.com/blog/2016/03/systemd-tutorial-part-two.html