mysql启动后自动停止_宝塔mysql总是自动停止解决方法总汇

2020-12-26 1310阅读 4评论

温馨提示:

文章最后更新于215天前,您需要注意相关的内容是否还可用,如有疑问请联系作者!

宝塔的数据库经常性自动停止,是因为网站频繁的请求数据库,而服务器内存又不足,为了保证服务器不彻底卡死,保护性的自动停止数据库,特别是有些程序比如ZBlog的数据库查询次数尤为突出,加上ZBlog插件之多,就算你不进行任何操作,你的后台也是在频繁的请求数据库!

就更不要提通过一些插件备份网站,做大量的文章更新,以及采集等,如果服务器配置很低,甚至采集一篇文章十几张图片就能瞬间让你的内存跑满导致服务器彻底卡死!当然导致这种问题除了服务器配置不够还跟你设置不当所导致有关,比如MySQL、php等性能设置!当然今天讨论的主题并不是这。

虽然ZBlog可以通过缓存减轻数据库负担,但是当你管理后台更新文章或其他操作还是会不可避免的请求数据库,特别是ZBlog这种越来越臃肿的程序,且避免不了一些人恶意的请求以及垃圾蜘蛛的恶意爬取,导致数据库保护性暂停。

当然这里是推荐你更换更高配置的服务器,如果你不打算更换可以考虑一下方法解决宝塔面板数据库自动停止的问题!

出现数据库经常停止可以参照下面解决方案:

解决方法一:

安装宝塔面板【linux工具箱】

mysql启动后自动停止_宝塔mysql总是自动停止解决方法总汇,mysql启动后自动停止_宝塔mysql总是自动停止解决方法总汇 mysql启动后自动停止 mysql服务启动后又自动停止 mysql自动停止运行 第1张,mysql启动后自动停止,mysql服务启动后又自动停止,mysql自动停止运行,第1张

mysql启动后自动停止_宝塔mysql总是自动停止解决方法总汇,mysql启动后自动停止_宝塔mysql总是自动停止解决方法总汇 mysql启动后自动停止 mysql服务启动后又自动停止 mysql自动停止运行 第2张,mysql启动后自动停止,mysql服务启动后又自动停止,mysql自动停止运行,第2张

添加设置SWAP大小,根据你的实际内存进行调整,swap是Linux下的虚拟内存,设置适当的swap可增加服务器稳定性,建议swap容量在真实内存容量的1.5倍左右,若您的服务器内存大于4GB,可设1-2GB的固定值,swap文件默认保存在/www/swap,设置前请确保磁盘空间够用。

在这里注意 :OVZ虚拟架构机器不可用此功能

解决方法二:

根据你的实际内存进行mysql优化

mysql启动后自动停止_宝塔mysql总是自动停止解决方法总汇,mysql启动后自动停止_宝塔mysql总是自动停止解决方法总汇 mysql启动后自动停止 mysql服务启动后又自动停止 mysql自动停止运行 第3张,mysql启动后自动停止,mysql服务启动后又自动停止,mysql自动停止运行,第3张

解决方法三:

上个文章讲,但是不科学,无缘无故就去启动数据库 应该先添加一个检测 确定数据库停止 在去启动 

宝塔版面内存太小,机器经常数据库自己停止,添加一个自动数据库任务再试试?

登陆宝塔后台-计划任务-添加Mysql守护,执行周期,可选择多长时间执行一次,比如10分钟监控执行一次,具体的周期请站长根据自己服务器实际情况来设置。

但是我发现这个脚本误导了很多人,这个脚本只能定时自动重启在运行中的数据库。缓减数据库的压力,如果数据库已经停止,还是只能手动执行才行,无法自动将已停止的数据库重启!

pgrep -x mysqld &> /dev/nullif [ $? -ne 0 ];thenbash /www/server/panel/script/rememory.sh/etc/init.d/mysqld startfi

想要自动检测数据库是否停止,如果检测到数据库停止,自动重启!下面这段脚本才是正确的!

#!/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

mysql启动后自动停止_宝塔mysql总是自动停止解决方法总汇,mysql启动后自动停止_宝塔mysql总是自动停止解决方法总汇 mysql启动后自动停止 mysql服务启动后又自动停止 mysql自动停止运行 第4张,mysql启动后自动停止,mysql服务启动后又自动停止,mysql自动停止运行,第4张

执行周期我设置的1分钟检测一次,也就当你数据库停止后,1分钟会重启,网站可以正常访问了!个人觉得这个脚本的执行周期可以设置短一点。

两个计划脚本建议分别都添加上,但是要注意的一点,本文中的第一个脚本执行周期时间不建议设置的过小,10分钟即可,如果第一个脚本时间设置过短,当你才后台更新文章或者升级网站程序时可能会造成错误!

解决方法四:

这个方法简单粗暴,适合土豪站长,直接增加服务器内存或使用云数据库,把数据库分离出去。



导致数据库自动暂停是多方面的,这篇文的方法并没有从根本上解决这个问题,而是尽量减少数据库导致网站长时间无法正常,如果你的数据库一个星期只是3-4次自定停止,通过这个可以有效解决,对seo优化和用户体验也不会有太大影响!

如果经常性的一天数据库就停止好几次,那么就是宝塔设置有问题了,请检查你的宝塔设置是否有安全问题,以及数据库配置和php版本设置是否得当,经常看看日志是否有恶意请求!


文章版权声明:除非注明,否则均为IT屋博客原创文章,转载或复制请以超链接形式并注明出处。
您需要 登录账户 后才能发表评论

发表评论

表情:
评论列表 (有 4 条评论,1310人围观)
网友昵称:上善若水
上善若水V普通用户2020-12-26沙发 回复 Google Chrome 80.0.3987.132 Redmi Note 8
博主 你1h1G 200多个网站 我感觉你怎么优化也是炸
网友昵称:韩晓雨
韩晓雨V普通用户2020-12-29椅子 回复 MQQBrowser 6.2 Redmi Note 8
牛逼 二百个网站
网友昵称:文曦
文曦V博主2021-02-10板凳 回复 Google Chrome 88.0.4324.104 Windows 7 x64
1111
网友昵称:文曦
文曦V博主2021-03-11凉席 回复 QQ 3.3.5.2962 Redmi Note 8
1
取消
支付宝二维码
支付宝二维码
微信二维码