I wrote a post a while ago covering the use of Monit to monitor services running and the use case I covered was to ensure these services restarted on failure. While a useful feature of Monit, it seems to be now a little redundant with SystemD having a built in restart feature.
Same use case where MySQL (or MariaDB in this case) is being killed by Apache’s oom killer.
I first copied the original systemd file associated with Mariadb from /usr/lib/systemd/system/mariadb.service to /etc/systemd/system/mariadb.service
Then under the [Service] section in the file i added the following 2 lines:
After saving the file we need to reload the daemon configurations to ensure systemd is aware of the new file
Then restart the service to enable the changes.
systemctl restart mariadb
You can test this configuration by firing a kill to the process, e.g.:
ps -ef|grep maria
mysql 22701 22542 0 06:52 ? 00:00:01 /usr/libexec/mysqld --basedir=/usr --datadir=/var/lib/mysql --plugin-dir=/usr/lib64/mysql/plugin --log-error=/var/log/mariadb/mariadb.log --pid-file=/var/run/mariadb/mariadb.pid --socket=/var/lib/mysql/mysql.sock
watch "ps -ef|grep maria"
You should see the process restart.