[宝塔面板]关于宝塔7.42被删库后如何恢复被删除的mysql,图文教程
这两天不少使用宝塔面板7.4.2的网站都被批量删库!甚至是政府网也无一幸免!
以目前的形式来看,宝塔不仅失去的是政府与大企的信任,甚至是即将失去大部分忠诚用户!数据库是一个网站的生命。
为什么说会失去信任?
这个pma漏洞指的是公网鉴权,俗称“公网脱裤”; 方法在内行已经被不法分子传开,这里不宜描述,但从删库的手段来看是明显的傻瓜式操作,所以目前截止包含政府网均被批量删库。
夏柔获得的消息是从事“非法删库”的手段公民年仅不到18岁!(未证实)
就在几个小时前,宝塔官方也给所有用户发送了2次短信,再次提醒立即在线升级版本修复新漏洞,可惜到目前为止还有大部分站长已经放弃了升级宝塔面板的版本,而是到处寻找恢复数据库的方法。
总结:
- 每天定时备份全站数据(宝塔定时备份)
- 每天关注安全漏洞话题
- 每天关注WordPress极简博客的技术文章
- 数据库等敏感地址做好防火墙以及限制你的IP才可以访问
- 数据库独立定时备份(总共几百M,别说没空间,大的定时传百度盘)
不管什么问题,坏人终将会受到法律的制裁,还有一些关于这个漏洞吐槽的各种图片就不发出来了,这样对宝塔的名誉也会有所损失。
如何恢复数据库?
前言已经大致描述,现在言归正传,讲讲该如何恢复数据库。
引言
二进制日志记录了由开启到停止所有数据库的所有增删改操作(这里的数据库指的是mysql里面的所有数据库),所以只能恢复出现过的sql语句的数据;适用于数据灾难的、证据库总体和高精度的恢复;此方法不适合日常的数据恢复,所以平常要做好数据备份!
此方法在使用前做好创建快照的准备(如备份整个服务器)。
03通过宝塔二进制日志恢复数据库
系统环境:
操作系统:CentOS 系统;
WEB服务:PHP+Mysql+apache/nginx;
网站:自建的演示站;
先登陆Mysql
指令: mysql -h localhost -u root -p 输入你的数据库密码
登陆成功
当出现 mysql> 代表你已成功登录数据库!
1、检查mysqlbinlog日志功能,图中返回 NO代表开启,OFF代表未开启
默认都是开启的,不要手欠给关了
如何开启二进制日志?
window需要修改my.in文件,linux需要修改my.conf
在[mysqld]下面加上一行log-bin=D:\\mysql\\bin-log\\mysql-binlog
修改后重启mysql
会发现d:/mysql/bin-log/下多了mysql-binlog.index、mysql-binlog.000001这两个文件,mysql-binlog.index为文件的索引文件,mysql-binlog.000001为二进制日志文件
首先我们mysql命令行中,用“show master logs;”或 “show binary logs;”命令查看已有的binlog文件。
使用上面的命令
然后查看当前二进制日志文件状态“show master status;”
查看当前状态
恢复数据库
mysqlbinlog命令用于将二进制日志文件恢复数据库
主要的参数有
--start-date(指定开始日期,时间格式为2020-08-23 10:14:51,恢复到这个时间之后的数据,包括此时间)
--stop-date(指定结束时间,时间格式为2020-08-23 23:15:50,恢复到这个时间段之前的,不包括此指定时间)
例子,上面参数是可以单独一个使用
[root@iz2ze5ejo1w2tviavu3m3xz ~]# \mysql\bin-log>mysqlbinlog --start-date="2020-08-23 10:14:51" --stop-date="2020-08-23 23:15:50" mysql-binlog.000012 | mysql -uroot -proot
--start-position(指定开始位置,恢复到此位置之后的数据,包括此位置)
--stop-position(指定结束位置,恢复此位置之前的数据,不包括此位置)
[root@iz2ze5ejo1w2tviavu3m3xz ~]# \mysql\bin-log>mysqlbinlog --start-position=951 --stop-position=1391 mysql-bin
log.000012 | mysql -uroot -proot
然后回到数据库表再看看是否恢复
教程结束,希望本教程能帮到你
版权与免责声明:
凡注明稿件来源的内容均为转载稿或由网友用户注册发布,本网转载出于传递更多信息的目的;如转载稿涉及版权问题,请作者联系我们,同时对于用户评论等信息,本网并不意味着赞同其观点或证实其内容的真实性;