宝塔面板里mysql经常自动停止怎么办?
宝塔面板里mysql经常自动停止怎么办?
随着服务器里面的项目越来越多,会发现宝塔面板里mysql经常自动停止。通常这个是因为服务器内存不足导致的。
解决方法最好的是增加服务器内存。如果你还不想花这个钱,那就可以通过增加虚拟内存。或者监控mysql进程状态来确定要不要重启mysql,今天重点说下这个方法。
第一种方法:
在宝塔面板后台,点击计划任务;选择任务类型为Shell脚本
任务名称:Mysql定时检查(名字随意)
执行周期:比如每小时或者每1分钟执行一次,根据你的实际要求来决定。
如下图设置:
添加以下代码;
pgrep -x mysqld &> /dev/null if [ $? -ne 0 ];then bash /www/server/panel/script/rememory.sh /etc/init.d/mysqld start fi
添加成功后,执行以下这个脚本。这样系统就会每隔一段时间检查以下mysql了,如果停止了,就自动重启它。
解决方法 2:安装宝塔面板里的 Linux工具箱
在宝塔面板的【 应用商店 】中搜索“Linux工具箱”,点击 安装 按钮,安装好 Linux工具箱 后,在 Linux工具箱 的弹窗设置中,找到 Swap/虚拟内存 设置项,根据使用的服务器配置来进行虚拟内存的设置,不管网站使用的服务器内存多大,都建议添加 Swap。
- swap是Linux下的虚拟内存,设置适当的swap可增加服务器稳定性
- 建议swap容量在真实内存容量的1.5倍左右,若您的服务器内存大于4GB,可设1-2GB的固定值
- swap文件默认保存在/www/swap,设置前请确保磁盘空间够用
- 若您不需要swap,请将容量设为0
- OVZ虚拟架构机器不可用此功能
Swap/虚拟内存 推荐值:
- 2G 和 2G 以下内存的服务器,建议设置成和物理内存相同容量的 SWAP;
- 2G 以上的内存的服务器,建议设置为 2G。如果网站程序特别耗内存,2G 内存以上的 Swap 也可以设置与内存相同容量。
解决方法 3
根据你的实际内存进行mysql优化,将数据库的配置文件中innodb_buffer_pool_size 大小设置成 128MB 重启数据库即可。
实际测试下来,都没有卵用,VPS的内存就1GB,再怎么弄都是不够,该挂都得挂。
解决宝塔mysql总是自动停止的最新方法:
将MySQL版本切换成 5.5 以下. 版本5.5所使用的内存只有 5-7MB, 如果使用 MySQL 5.6 , 在宝塔的数据里面会发现内存飙到 20-25 MB
默认配置先跑一段时间,如果没有继续更新本篇文章,说明是有效的