Neurohazard
暮雲煙月,皓首窮經;森羅萬象,如是我聞。

修改 systemd 自动重启服务

wpadmin~October 12, 2020 /System Management

修改 systemd 自动重启服务

正文

遇到 mysql 莫名挂掉的情况, systemd 却没有重启。

第一步,确定服务名称。

systemctl list-units --type=service | grep -z --color mysql.service

第二步,找到具体服务对应的 unit 文件

find /etc/systemd/system -iregex ".*Mysql.*"

注意 name/iname regex/iregex ,加了 i 就是不区分大小写

第三步,编辑 unit 文件, restart 改 always

 root@dev cat /etc/systemd/system/multi-user.target.wants/mysql.service
# MySQL systemd service file

[Unit]
Description=MySQL Community Server
After=network.target

[Install]
WantedBy=multi-user.target

[Service]
Type=forking
User=mysql
Group=mysql
PIDFile=/run/mysqld/mysqld.pid
PermissionsStartOnly=true
ExecStartPre=/usr/share/mysql/mysql-systemd-start pre
ExecStart=/usr/sbin/mysqld --daemonize --pid-file=/run/mysqld/mysqld.pid
TimeoutSec=600
Restart=always
RuntimeDirectory=mysqld
RuntimeDirectoryMode=755
LimitNOFILE=5000

第四步,systemd 重新加载配置文件,并重启 mysql 服务。

systemctl daemon-reload
systemctl restart mysql

参考

https://www.ruanyifeng.com/blog/2016/03/systemd-tutorial-part-two.html
https://zhuanlan.zhihu.com/p/56889721

Leave a Reply

Your email address will not be published. Required fields are marked *