前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家。点击跳转到网站。

mysql二进制日志恢复

(有很多朋友私信求帮助恢复数据库,可以加微信备注添加原因,如果能帮助解决问题,给点辛苦费就行(●'◡'●))

有一个朋友,在工作中,复制网上的代码,错误的把"delete from table"当成了 "select from table",结果删除了大量数据表内容。

那么如何避免被项目经理杀了祭天呢?

宝塔面板的mysql自动开启了binlog功能~ 也就是说我们可以直接通过binlog方式恢复宝塔误删的数据。

1、检查mysqlbinlog日志功能,图中返回 NO代表开启,OFF代表未开启

    mysql> show variables like 'log_%'; +----------------------------------------+---------------------------------------+| Variable_name                          | Value                                 |+----------------------------------------+---------------------------------------+| log_bin                                | ON                                    | ------> ON表示已经开启binlog日志| log_bin_basename                       | /usr/local/mysql/data/mysql-bin       || log_bin_index                          | /usr/local/mysql/data/mysql-bin.index || log_bin_trust_function_creators        | OFF                                   || log_bin_use_v1_row_events              | OFF                                   || log_error                              | /usr/local/mysql/data/martin.err      || log_output                             | FILE                                  || log_queries_not_using_indexes          | OFF                                   || log_slave_updates                      | OFF                                   || log_slow_admin_statements              | OFF                                   || log_slow_slave_statements              | OFF                                   || log_throttle_queries_not_using_indexes | 0                                     || log_warnings                           | 1                                     |+----------------------------------------+---------------------------------------+

2、找到宝塔面板的/www/server/data文件夹,找到mysql-bin.xxxxx之类的文件

因为网站本身有定时备份,时间在2022/04/12,数据删除时间在2022/04/22 下午17点。

丢失了10天的数据,找回命令

3、在宝塔终端或者ssh中root权限下,使用命令:

/www/server/mysql/bin/mysqlbinlog --start-datetime="2022-04-12 01:30:01" --stop-datetime="2022-04-22 18:30:01" /www/server/data/mysql-bin.00* > redata.sql

如果你的网站没有数据备份可以不写开始时间,只写结束时间

/www/server/mysql/bin/mysqlbinlog --stop-datetime="2022-04-22 18:30:01" /www/server/data/mysql-bin.00* > redata.sql

运行上面的命令后进入root目录下查看是否出现了redata.sql文件,该文件大小应该远大于删掉的数据库大小,假如没有生成该文件或者该文件过小,那么尝试下面这条命令(博主用了没成功,不知原因)

/www/server/mysql/bin/mysqlbinlog --base64-output=DECODE-ROWS -v -d 数据库名 /www/server/data/mysql-bin.0000* > redata.sql

这条命令不再设置时间点,而是完全按照文件恢复,数据库名换成删掉的数据库名,假如不记得了,去网站文件config或者其他数据库配置文件查看,宝塔默认数据库和网站文件夹同名,点换成下横线。

运行该命令后进入root目录下查看是否出现了redata.sql文件。

4、假如有了redate.sql文件,在数据库中新建数据库,数据库名最好和删掉的数据库同名,然后执行下面的命令:

mysql -uroot -p -f 新建数据库名 < redata.sql

如果不成功,使用编辑器打开redata.sql,因为文件较大,使用vscode在处理时容易崩溃,建议使用sublime对大文件编辑处理更友好。

5、将insert命令全部复制到一个新的insert.sql文件中

快捷键ctrl+l,选中当前行,复制到insert.sql中,仔细对比新添加的数据是否正确。

同样的办法将update和delete命令分别复制到update.sql和delete.sql中。

6、将复制出的三个sql文件导入本地数据库,检查是否是错误删除的数据。

注意在命令后加分号 ;

检查数据正确后传到线上版本。

如果数据恢复了请给这篇博客点个赞或者点个关注

宝塔误删mysql数据如何恢复?(救命题)相关推荐

  1. Oracle Drop误删表、Delete误删表数据后恢复方法

    关于ORALCE误删表后恢复 1. 查看回收站的表: select object_name,original_name,type,createtime,droptime from recyclebin ...

  2. MySQL数据备份恢复全攻略,让我们通过简单几步找回丢失的数据

    编写初衷 没有人生下来天生就是会计算机的,就拿笔者来说的话,也是从Windows->Centos->Ubuntu一步一步慢慢学习,积累下来的.为了让大家能够更快更高效率的学习,从今天开始, ...

  3. mysql数据备份恢复

    数据备份恢复 一.概述 MySQL数据备份即databases Binlog my.cnf 所有备份数据都应放在非数据库本地,而且建议有多份副本.测试环境中做日常恢复演练,恢复较备份更为重要. 备份: ...

  4. mysql数据如何恢复到任意时间节点?mysql数据恢复,mysql数据备份

    文章目录 写在前面 数据备份与恢复 1.全量备份 模拟全量备份与恢复 全量备份的缺点 2.增量备份 模拟增量备份与恢复 增量备份注意事项 总结 写在前面 作为互联网开发人员来说,数据安全性一直排在第一 ...

  5. Mysql数据备份恢复及主从同步

    目录 Mysql备份及主从同步 Mysql备份 1. mysqldump全量备份 2.log_bin增量备份 Mysql主从同步配置 1.1主从同步过程 1.2 配置 Mysql备份及主从同步 Mys ...

  6. 记录一下:关于mysql数据误删除恢复的问题

    大概看来几篇博客: 1.delete的可以通过回滚(rollback)的方式恢复;但是前提是,你的数据表引擎是InnoDB而不是MyISAM,而且操作不是自动提交的 但是这种方式不可以恢复trunca ...

  7. 群晖NAS误删30T数据成功恢复全过程

    公司同事即将离职,不知道是无意还是恶意删除了公司200T共享存储空间的群晖NAS上30T的数据.电脑利用SMB协议挂载开机挂着删,删了三天三夜,直到第三天同事工作用着用着数据,突然就没了才发现有人在删 ...

  8. 达梦数据库-误删表数据的恢复

    作为一个达梦的初学者,写这篇文章的目的是为了把学到的新知识做个总结梳理,在整理中查缺补漏,也希望大家看了我的文章能有收获,如有错误的地方欢迎指出. 误删数据分为以下几种场景,针对不同场景做不同恢复操作 ...

  9. 阿里云mysql数据备份恢复数据到本地mysql(备份+binlog)

    参考:https://help.aliyun.com/knowledge_detail/41817.html?spm=a2c4g.11186623.4.3.49bf4292RNNrSC 起因:生产环境 ...

最新文章

  1. 相同的研究手段,相反的研究结论例子
  2. OpenStack高可用核心架构分析
  3. Spark-ML-数据获取/处理/准备
  4. TF之BN:BN算法对多层中的每层神经网络加快学习QuadraticFunction_InputData+Histogram+BN的Error_curve
  5. 《操作系统实现之路》源代码下载路径及求助途径
  6. RDBMS 与 非RDBMS
  7. Windows Azure 社区新闻综述(#70 版)
  8. 在5分钟内在MacOSX Lion中设置JAVA_HOME,MAVEN_HOME,ANT_HOME
  9. 求一批整数中出现最多的个位数字_(43)C++面试之从1到n整数中1出现的次数
  10. 我的家庭私有云计划-20
  11. CF1313C2 Skyscrapers (hard version) -单调栈优化dp
  12. linux运行酷q,Linux通过docker安装运行酷Q--用QQ骰子君进行跑团
  13. 熵增与热力学第二定律
  14. 有些打不开的国外网页
  15. Latex中的参考文献写法
  16. 中学教师资格考试作文真题
  17. 半监督3D医学图像分割(三):URPC
  18. 加盟店可靠吗?如何识破加盟骗局?
  19. Android转场动画(View Activity ARouter)
  20. 【高性能计算背景】《并行计算教程简介》翻译 - 中文 - 3 / 4

热门文章

  1. 实验室计算机主机应关闭显示器一般不用关,学生晚上回宿舍时,其在实验室的计算机主机应关闭,显示器一般不用关闭。...
  2. 2020年整理的python零基础入门教程汇总全集
  3. 拟牛顿法及其相关解法
  4. Play to earn(P2E)区块链游戏如何才能找到玩家们的“G点”?
  5. 【IoT】智能硬件:如何获取硬件产品的wifi信号强度
  6. bzImage、zImage
  7. html空格转义字符 %3e,转义字符串
  8. 那些年我们经历过的运维
  9. 聊聊国内云厂商三朵云
  10. 对女人的27点建议和给男人的21句忠告