宝塔Linux面板最近发现网站提示建立数据库连接时出错,使用phpMyAdmin连接MySQL数据提示无法登录MySQL服务器,后来发现是MySQL数据库自动停止了,重启MySQL后,发现过一段时间又会自动停止,新手站长网分享宝塔面板数据库自动停止的解决方法:
宝塔MySQL数据库经常停止的解决方法
云服务器运行宝塔面板经常出现MySQL数据库自动停止,可能是由于云服务器内存吃紧的问题,新手站长网站这台云服务器是1核1G的,所以应该是内存太小导致的,那么怎么办?可以通过宝塔面板后台的Linux工具箱来设置Swap/虚拟内存:
首先登录到宝塔面板后台,选择左侧栏“软件商店”–“系统工具”–找到“Linux工具箱”,点击设置,选择“Swap/虚拟内存”,添加Swap,如下图所示:
爱主机评测网,最优惠主机信息推荐,便宜VPS分享,香港CN2
宝塔Linux工具箱Swap/虚拟内存
- swap是Linux下的虚拟内存,设置适当的swap可增加服务器稳定性
- 建议swap容量在真实内存容量的1.5倍左右,若您的服务器内存大于4GB,可设1-2GB的固定值
- swap文件默认保存在/www/swap,设置前请确保磁盘空间够用
- 若您不需要swap,请将容量设为0
- OVZ虚拟架构机器不可用此功能
综上,如果宝塔面板MySQL数据库经常自动重启,很有可能是因为内存不足导致的,可以使用Linux工具箱来设置Swap虚拟内存。
如果上述仍然不能解决问题,可以设置宝塔数据库自动重启shell脚本,代码如下:
- #!/bin/bash PATH=/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin:~/bin export PATH pgrep -x mysqld /dev/null if [ $? -ne 0 ] echo At time:$(date) :MySQL is stop . /var/log/mysql_messages service mysqld start fi
上述shell脚本会自动检测宝塔数据库是否停止,如果检测到数据库停止则自动重启。复制上述代码粘贴到宝塔计划任务Shell脚本中,如下图所示:
宝塔数据库自动重启Shell脚本
可以自行手动停止MySQL数据库测试下Shell脚本是否自动运行。