今天早晨,打开数据库一看,保存的数据全不见了,只剩下一个叫PLEASE_READ_ME_VVV的数据库。

里面写着

To recover your lost Database and avoid leaking it: Send us 0.045 Bitcoin (BTC) to our Bitcoin address 1McksxpysJGSG9a9zHvan5f8Y1nfpDbVYF and contact us by Email with your Server IP or Domain name and a Proof of Payment. Your Database is downloaded and backed up on our servers. Backups that we have right now: *. Any email without your server IP Address or Domain Name and a Proof of Payment together will be ignored. If we dont receive your payment in the next 10 Days, we will make your database public or use them otherwise.

翻译过来就是:

要恢复丢失的数据库并避免泄漏:请将0.045比特币(BTC)发送到我们的比特币地址1Mcksxpysjgsg9a9zhvan5f8y1nfpdbvyf,并通过电子邮件与您的服务器IP或域名和付款证明联系。您的数据库已下载并备份到我们的服务器上。我们现在拥有的备份:*。任何没有您的服务器IP地址或域名和付款证明一起的电子邮件都将被忽略。如果我们在未来10天内没有收到您的付款,我们将公开您的数据库或使用它们。

被勒索了。

第一步,打开谷歌寻找解决办法。看到这篇博文,遇到了同样的问题。

以下内容,针对具体情况进行进一步处理。

第二步,查看自已是否打开了mysql的binlog

SHOW VARIABLES LIKE 'log_bin%';

复制代码+---------------------------------+---------------------------------------+

| Variable_name | Value |

+---------------------------------+---------------------------------------+

| log_bin | ON |

| log_bin_basename | /usr/local/var/mysql/mysql-bin |

| log_bin_index | /usr/local/var/mysql/mysql-bin.index |

| log_bin_trust_function_creators | OFF |

| log_bin_use_v1_row_events | OFF |

| sql_log_bin | ON |

+---------------------------------+---------------------------------------+

6 rows in set (0.00 sec)

复制代码

log_bin是ON说明mysql是开启了binlog的,找到了binlog的位置,在

/usr/local/var/mysql/mysql-bin

于是

cd /usr/local/var/mysql

复制代码

其中的mysql-bin.00000*就是binlog文件。

binlog是Mysql sever层维护的一种二进制日志,与innodb引擎中的redo/undo log是完全不同的日志;其主要是用来记录对mysql数据更新或潜在发生更新的SQL语句,并以"事务"的形式保存在磁盘中;

作用主要有:

复制:MySQL Replication在Master端开启binlog,Master把它的二进制日志传递给slaves并回放来达到master-slave数据一致的目的

数据恢复:通过mysqlbinlog工具恢复数据

增量备份

然后我们打开最新的binlog文件,在文件的最后几行,你会发现令人窒息的操作

好了,这下我明白了,人家直接drop了。

第三步:使用binlog恢复文件

原理就是binlog保存了你所有的数据库操作,相当于你重新执行了在执行drop之前所有的增删改查。

那么我们就需要找到发生删除的时间点。如上图所示,# 190622 9:32:19

所以使用mysqlbinlog恢复数据库

在/usr/local/var/mysql 目录下执行

mysqlbinlog --start-datetime='2019-01-01 00:00:00' --stop-datetime='2019-06-24 10:30:00' mysql-bin.000001 | mysql -h 123.45.678.9 -u root -p -P 3306

复制代码

其中

start-datetime=为你想恢复的起始位置,一般为刚创建数据库的时候

stop-datetime=为被删库之前的时间,只要是被删库之前就可以

mysql-bin.000001为要恢复的binlog文件,将所有相关的mysql-bin都写上,以逗号隔开

mysql -h 123.45.678.9 -u root -p -P 3306 为你的远程数据库地址

123.45.678.9为远程ip

root为用户名

3306为端口号

第四步:恢复完成

如果第三步出错,一般都在于没有选择合适的起始和终止时间,这个需要自己去寻找

恢复过程视数据库大小时间长短不定

参考资料:

mysql勒索_mysql数据库被勒索删库怎么办相关推荐

  1. mysql数据库recover_xxx数据库恢复 mariadb数据库误删除恢复 mysql数据库被黑删库恢复

    6月 mysql数据库被删库的太多了, 如果你也遇到了这个问题,那就保护好原始环境 不要尝试恢复了,赶紧联系专业人士处理. 这种删库后,实际的数据库表数据文件 还存在磁盘 只是文件簇链接被破坏,所以看 ...

  2. 数据库周刊54丨2020 年度报告:PingCAP、腾讯云数据库、人大金仓、GoldenDB ;CPU 100% SQL优化案例;Mysql内存溢出处理;避免删库跑路黑天鹅……

    热门资讯 [1.PingCAP 2020 年度报告|相信开放的力量 [摘要]本文为PingCAP 2020年度报告.盘点了PingCAP里程碑大事件:完成D轮2.7亿美元融资,创造全球数据库历史新的里 ...

  3. mysql数据库二进制备份_MySQL数据库如何创建全库及二进制增量备份脚本

    MySQL数据库如何创建全库及二进制增量备份脚本 发布时间:2020-05-25 11:52:55 来源:51CTO 阅读:206 作者:三月 下面讲讲关于MySQL数据库如何创建全库及二进制增量备份 ...

  4. 阿里云mysql目录_mysql数据库目录存放位置更改-阿里云开发者社区

    mysql Oracle官方下载 类型特多 看起来很让人头痛  我们选择 Download MySQL Community Server 在这个下载网站 选择平台是ORACL& RED HAT ...

  5. 数据库——可不敢删库跑路喽(建议收藏)

    数据库--删库跑路喽 数据库简介 数据库是什么东东? 数据库分类如何? 数据库基本操作 数据库的进阶操作 表的聚合查询(认真对待哦) MySQL索引事务(简单了解) Java的JDBC简单操作 简介 ...

  6. mysql安全措施_MySQL数据库在网络安全方面的一些防御措施

    随着网络的普及,基于网络的应用也越来越多.网络数据库就是其中之一.通过一台或几台服务器可以为很多客户提供服务,这种方式给人们带来了很多方便,但也给不法分子造成了可乘之机.由于数据都是通过网络传输的,这 ...

  7. mysql 小雨_Mysql数据库

    Mysql服务配置 安装mysqld服务: yum groupinstall 'mysql database server' yum –y install mysql-server php-mysql ...

  8. mysql大小写敏感_MySQL数据库大小写敏感的问题

    在MySQL中,数据库对应数据目录中的目录.数据库中的每个表至少对应数据库目录中的一个文件(也可能是多个,取决于存储引擎).因此,所使用操作系统的大小写敏感性决定了数据库名和表名的大小写敏感性.这说明 ...

  9. mysql 文卷_mysql数据库试卷

    {"moduleinfo":{"card_count":[{"count_phone":1,"count":1}],&q ...

最新文章

  1. C语言:随笔6--指针1.2
  2. Matlab与线性代数 -- 矩阵的秩
  3. 利用ServletFileUpload组件上传文件
  4. python学习第三天 --布尔类型
  5. dataframe groupby_PySpark SQL——SQL和pd.DataFrame的结合体
  6. linux c 执行shell命令并获取返回结果
  7. 51单片机串口通信(字符串接收和发送)
  8. DataGridView 添加ComboBox
  9. java导出mysql数据库失败_利用Java进行MySql数据库的导入和导出
  10. html网页定位,HTML_定位网页元素(示例代码)
  11. flex 固定一列_css实现两列固定与一列自适应的几种方法
  12. linux 网卡no carrier,linux centos 7 网卡突然不能上网异常解决
  13. 通过url路径下载服务器文件
  14. 推箱子如何实现悔步_推箱子时代又来临,表里世界会发生什么?
  15. Redis基础(一)——NoSQL
  16. RazorPage介绍(一)
  17. 『图解』深度可分离卷积
  18. Javashop多用户商城系统源码 云表-无代码开发平台 框架源码
  19. win10计算机组共享的打印机,Win10系统局域网共享打印机设置 共享大地Win10打印机的方法...
  20. 微信朋友圈 html 字体颜色,微信朋友圈怎么发文字,朋友圈字体颜色可以改吗?...

热门文章

  1. Travel SCU - 4444
  2. Opencv中普通相机模型与鱼眼相机模型的区别
  3. Excel柱形图劈成积木块,这种简单的步骤你了解吗?
  4. SQL图文讲解操作12-多表查询
  5. DDL、DML、DCL区别
  6. 74LVC4245的作用及各管脚的定义
  7. ELK+Filebeat 部署安装
  8. 经常宕机的RAC系统 -排查案例
  9. 《大明宫词》之《采桑女》
  10. 奥塔在线:VisualStudio中使用Git的详细配置说明