当前位置:首页站点动态记一次官网删库恢复事件

记一次官网删库恢复事件

官网第一次被删库···结果发现是我删的···hhh~最近刚换完服务器,数据库备份?NO···

记一次官网删库恢复事件

干干净净···开始尝试恢复···下面是过程:

基础知识准备

binlog是二进制日志文件,用来记录Mysql内部对数据库的改动(只记录对数据的修改操作),主要用于数据库的主从复制以及增量恢复。

当我们搭建mysql主从复制的时候,两个实例之间也是通过binlog来完成数据的备份同步。

所以有这种根据binlog得到执行sql语句、闪回sql语句,我们只需要利用根据分析binlog,然后就可以找到准确的数据改动sql,并得到闪回sql,检查无误后执行就可以恢复数据了。

准备工作

这次采用binlog2sql工具来分析,由上海美团DBA团队出品

使用的是python语言,所以我们需要提前安装好python语言

我使用的是宝塔面板,宝塔面板已经内置安装了python,所以直接开始安装更三十就好了

安装binlog2sql工具

cd /www/server
git clone https://github.com/danfengcao/binlog2sql.git && cd binlog2sql
pip install -r requirements.txt
记一次官网删库恢复事件

开启mysql server主从配置

在mysql配置文件中填写以下内容

[mysqld]
server_id = 1
log_bin = /var/log/mysql/mysql-bin.log
max_binlog_size = 1G
binlog_format = row
binlog_row_image = full

  • 在宝塔面板中,有几个参数已经是开启的,我们无需修改,看以下内容

在软件管理 mysql 配置修改中 打开配置文件

33行开始,有几个参数已经填写了,我们主要是修改binlog_format和row_image

binlog文件储存位置默认是 /www/server/data 无需修改也可以

log-bin=mysql-bin
binlog_format = row
binlog_row_image = full
server-id = 1

开始实战

创建测试库、测试表、插入测试数据

然后执行delete 不带where条件 全部删除

mysql> select * from siamwp_links;
Empty set (0.01 sec)

接下来就是重点了,我们使用工具分析

查看当前的binlog文件名

mysql> show master status;

得到类似

+------------------+----------+--------------+------------------+-------------------+
| File | Position | Binlog_Do_DB | Binlog_Ignore_DB | Executed_Gtid_Set |
+------------------+----------+--------------+------------------+-------------------+
| mysql-bin.000006 | 613171 | | | |
+------------------+----------+--------------+------------------+-------------------+
1 row in set (0.00 sec)

我们记住mysql-bin.000006

打开binlog2sql工具分析

进入我们安装后的binlog2sql工具目录

cd /www/server/binlog2sql/binlog2sql

1l

可以看到这里面有py脚本

闪回sql语句

我们有了起始位置和结束位置,就可以利用工具,得到这一部分变化的闪回sql了

前面的大部分参数都一样 后面的筛选日期参数变成了起始位置和结束位置的值 还有一个-B即可

python binlog2sql.py -h127.0.0.1 -P3306 -uroot -p'密码' -dwww_siammm_cn --start-file='mysql-bin.000006' -B --start-pos 590075 --stop-pos 590633

结果是我也不知道是做到哪一步,官网数据回归。

记一次官网删库恢复事件 记一次官网删库恢复事件

虽然官网的一些数据乱了,但影响不大,重新分类一下就好了。

写在最后

官网运行了1000多天,从高一到大一第一次经历删库事件,最后凶手竟然是我自己···;今天是打算优化一下官网数据,结果GG···今天是做备战墙官网的第4年,希望我能坚持自己的初心,将这份公益一直免费的传递下去。

学子备战墙微公益平台

https://www.xzbzq.com


说说后续…官网数据全部恢复的时候是大概两点半左右,然后之前的小BUG一个一个修复,大概发现了60多个,修复了十几个,后来感觉发际线日渐秃顶,就直接删库了,目前使用备用站www2,主站也解析上了,剩下的明天再优化,丢失了150条更新数据….不过不想折腾了,18年的老数据,丢了就丢了罢,140M的官网数据…硬是传了将近一个小时,三月怎么了…自己修手机,自己修服务器,自己删库…唉…洗洗睡吧,不过想想五天后就是我的生日,开心点把,以后要么直接删库,玩么就不入坑[汗]

给TA打赏
共{{data.count}}人
人已打赏
站点动态

记一次宝塔面板优化

2020-2-21 15:06:32

站点动态

记一次学子备战墙官网团队事件

2020-8-2 19:49:43

4 条回复 A文章作者 M管理员
  1. 日常膜拜

    • 唉。日常删库···令人头大。

  2. 有没有app下载链接呀 网页链接都失效了

  3. 是真厉害啊

个人中心
购物车
优惠劵
今日签到
有新私信 私信列表
搜索

Warning: Undefined array key "avatar" in /www/wwwroot/blog.xzbzq.com/wp-content/themes/b2Jitheme/jitheme_functions.php on line 397

Warning: Undefined array key "name" in /www/wwwroot/blog.xzbzq.com/wp-content/themes/b2Jitheme/jitheme_functions.php on line 397

Warning: Undefined array key "avatar" in /www/wwwroot/blog.xzbzq.com/wp-content/themes/b2Jitheme/jitheme_functions.php on line 397

Warning: Undefined array key "name" in /www/wwwroot/blog.xzbzq.com/wp-content/themes/b2Jitheme/jitheme_functions.php on line 397
  • 纯七发布圈子单身三年现状
  • 纯七发布圈子单身三年现状
  • 对文章腾讯音乐人认证教程发布评论!