经过
- 2019年11月23日上午9点左右,在没有手动备份的前提下,升级了 MySql 数据库(从5.1到5.7)
- 半小时后,升级结束,网站无法登陆,显示“error establishing a database connec
七墨博客 tion” - 当时没多想,以为是升级后不兼容导致的,又切换到了5.1版本,网站还是报同样的错误
- 当时由于有别的更重要的事,故先放弃了折腾
- 下午14点左右,还未回家,尝试用手机登陆宝塔面板继续解决,搞了半天无果,故询问宝塔管理员,他让我在服务器上执行
ps aux|grep mysql
,可是手机端没有尝试过ssh登陆,故暂时放言七墨 下了手机 - 下午17点左右赶回家,开始查看原因,最后发现 MySql 压根没有安装成功,我又在原版本5.1和新版本5.7之间尝试切换了几次,都无法连接 phpmyadmin…
- 晚上20点左右,打算重装宝塔,先备份数据库,瞬间备份完成,当时心惊了一下,赶紧查看备份好的文件,才几十B,完了,数据全没了..
- 赶紧查看每周通过 shell 脚本备份的数据库压缩包,什么鬼,才几百B,解压,发现里面竟然只有一张用户表..
- 2年的站就这样被自己搞
七墨博客 没了…
反思
- 在没有搞清楚 MySql 如何升级时,就胡乱升级,站搞没了,也是活该呀!
- 下面开始甩锅,强行安慰自己一波!
- 过度相信第三方面板的能力,之前使用 shell 脚本备份数据库时,没有检查过备份功能是否好用。
- 升级 MySql 是在宝塔面板(3.几版本的宝塔)上执行的,在我升级 MySql 前,竟然没有任何提示,对我这不懂的小白来说,也是相当的不友好。现在安装了新版的宝塔面板(5.9.1版本),MySql升级有了“提前备份数据库的红色提醒”..
修复过程
- 将网站文件下载到本地
- 重装服务器系统
- 安装最新版的宝塔面板
- 安装 wordpress
- 从网站文件的缓存中恢复部分老数据
- 恢复的过程中,才发现当时做的网站已经背离了自己的初衷
- 故抛弃了很多篇缓存过的文章
- 好好思考当时真正要做这个网站的初衷
- 重新做站..
改善措施
- 新站做好后,还是使用 shell 脚本备份数据库,先手动备份一次,发现这次是真正备份了数据库的全部数据,故启用了两个备份 shell 脚本,一个是备份到服务器,一个是备份到自己的七牛云上,每周备份一次,保留最新的三份。
- 备份网站文件到服务器,也是先手动备份一次,发现备份的文件是没问题的,每周执行一次,保留最新的
https://qimok.cn 三份。 - 给服务器做了个镜像,以后准备每周手动制作一次,保留最新的两份。
https://qimok.cn
以自己的初衷好好做站:学习沉淀 | 奋力前行
宝塔论坛上也有一个人跟你的情况相似
bt。cn/bbs/thread-41191-1-1.html
这个帖子我看到过,其实,我这个是纯净的服务器,只是老版宝塔在升级 MySql 之前并未提示要备份,自己又没有升级 MySql 的经验,以为点击了更新就可以更新了(老版的操作面板还是不够友好),结果数据没了..