首页 » Linux » 配置mariadb服务自动重启

配置mariadb服务自动重启

mariadb服务经常会出现错误:Cannot allocate memory for the buffer pool。这种错误出现的主要原因是内存空间不足。从根本上解决的方法是使用更大的内存和扩大swap空间。此外,还应该定时重启服务器。之后将很少会出现之前的错误,但是并不能完全避免。因为有时会出现迸发的大量访问,为了峰值使用过大的内存或过于频繁地重启都是不现实的。这时就可以用到另一个选项就是让mariadb服务在出现错误后自动重启服务,而不是一直处于停止状态。

配置方法

首先需要让mariadb服务开机自启动,这个一般都配置过了,不然每次重启都要手动启动服务。

systemctl enable mariadb

然后编辑mariadb的服务文件 /etc/systemd/system/multi-user.target.wants/mariadb.service 在其中[Service] 节中添加

Restart=always
RestartSec=10
StartLimitInterval=0

Restart是控制在什么情况下自动重启,always意为任何情况下出现错误后都会重启。RestartSec为重启间隔。StartLimitInterval是重启次数限制,0为无限制。最后重新加载配置

systemctl daemon-reload

验证方法

首先查看当前服务的进程id

systemctl status mariadb

然后使用kill命令杀死当前进程,再使用上面的命令查看状态。如果很快的话会看到服务正在启动中。之后就会看到服务启动完成,并获得了一个新的进程id。

参考

发表评论

电子邮件地址不会被公开。 必填项已用*标注