一、前言

之前介绍了误删表数据后闪回的操作,本次介绍误删表后要如何进行操作。

二、数据恢复演示

set1:操作前先做个数据库的全备

mysqldump -uroot -p -S /root/mysql-sandboxes/5003/sandboxdata/mysqld.sock --master-data=2 --single-transaction  -A  >3306_all.sql

set2:模拟误删表操作

root@mysqld.sock 09:43:  [db1]> checksum table sbtest10;+--------------+------------+| Table        | Checksum   |+--------------+------------+| db1.sbtest10 | 4221337750 |+--------------+------------+1 row in set (0.29 sec)
root@mysqld.sock 09:44:  [db1]> drop table sbtest10;Query OK, 0 rows affected (0.32 sec)
root@mysqld.sock 09:44:  [db1]> show tables;+---------------+| Tables_in_db1 |+---------------+| sbtest1       || sbtest2       || sbtest3       || sbtest4       || sbtest5       || sbtest6       || sbtest7       || sbtest8       || sbtest9       |+---------------+9 rows in set (0.00 sec)

set3:新环境恢复备份

source /root/3306_all.sql;

set4:获取误操作的binlog位置

set5:新环境与就环境构建主从关系,并且从库同步到误操作前的一个事务

root@mysqld.sock 10:01:  [(none)]> change master to master_host='127.0.0.1',master_port=3306,master_user='test',master_password='test',master_auto_position=1;Query OK, 0 rows affected, 8 warnings (0.02 sec)
root@mysqld.sock 10:04:  [(none)]> start slave io_thread;Query OK, 0 rows affected, 1 warning (0.00 sec)
root@mysqld.sock 10:05:  [(none)]> show slave status\G*************************** 1. row ***************************               Slave_IO_State: Waiting for master to send event                  Master_Host: 127.0.0.1                  Master_User: test                  Master_Port: 3306                Connect_Retry: 60              Master_Log_File: testdb02-bin.000015          Read_Master_Log_Pos: 404               Relay_Log_File: testdb02-relay-bin.000001                Relay_Log_Pos: 4        Relay_Master_Log_File:              Slave_IO_Running: Yes            Slave_SQL_Running: No            ..... --设置SQL_threads停止的位置  root@mysqld.sock 10:05:  [(none)]> start slave sql_thread  until sql_before_gtids='2c736321-0be5-11ed-b3f1-525496022f28:1314817';Query OK, 0 rows affected, 1 warning (0.00 sec)         

set6:将新环境的sbtest10导出后导入源库

mysqldump -uroot -p -S /root/mysql-sandboxes/3309/sandboxdata/mysqld.sock --databases db1 --tables sbtest10 >sbtest10.sq
root@mysqld.sock 10:12:  [db1]> source sbtest10.sql;
root@mysqld.sock 10:11:  [db1]> show tables;+---------------+| Tables_in_db1 |+---------------+| sbtest1       || sbtest10      || sbtest2       || sbtest3       || sbtest4       || sbtest5       || sbtest6       || sbtest7       || sbtest8       || sbtest9       |+---------------+10 rows in set (0.00 sec)
root@mysqld.sock 10:12:  [db1]> checksum table sbtest10;+--------------+------------+| Table        | Checksum   |+--------------+------------+| db1.sbtest10 | 4221337750 |+--------------+------------+1 row in set (0.17 sec)

至此误删表的数据已经恢复完毕。

MySQL误操作数据恢复之误删表相关推荐

  1. Mysql通过ibd恢复误删表数据

    为了保险起见新建一个数据库,在新建的数据库中来操作,这样就算失败也不会影响: 在新建的数据库中,新建一张和误删表一模一样的表,表结构.名称什么的都需要一样: 在新建数据库中执行(ALTER TABLE ...

  2. binlog回滚mysql误操作数据

    记录mysql误操作 删除或者修改数据后如何回滚 线上数据库中的数据不像测试数据库那样,需要严谨的使用,如果因为误操作导致数据失真,是比较严重的线上事件 以下举例如何通过mysql binlog日志回 ...

  3. mysql 修改数据 where_MySQL 误删数据、误更新数据(update,delete忘加where条件)

    MySQL 误操作后数据恢复(update,delete忘加where条件) 关键词:mysql误删数据,mysql误更新数据 在数据库日常维护中,开发人员是最让人头痛的,很多时候都会由于SQL语句写 ...

  4. mysql 找回误删表的数据办法_mysql找回误删表的数据方法(必看)

    有备份的话很简单,只需要生成一个最近备份的数据 然后用mysqlbinlog找回备份时间点之后的数据 再恢复到现网即可. 要是没有备份 可能就会比较麻烦,找回数据的成本也是非常之高的. 下面介绍下 m ...

  5. mysql 清空表怎么恢复_mysql怎么恢复删除的表?mysql找回误删表的数据方法

    下面小编就为大家带来一篇mysql 找回误删表的数据方法(必看).小编觉得挺不错的,现在就分享给大家,也给大家做个参考.一起跟随小编过来看看吧. 有备份的话很简单,只需要生成一个最近备份的数据,然后用 ...

  6. mysql linux改user_linux mysql误修改user表导致无法root用户登录,求大神帮助。-问答-阿里云开发者社区-阿里云...

    linux mysql误修改user表导致无法root用户登录,急救!!! mysql> select user,host,password from user; user host passw ...

  7. mysql表误删回复_mysql 找回误删表的数据方法(必看)

    有备份的话很简单,只需要生成一个最近备份的数据 然后用mysqlbinlog找回备份时间点之后的数据 再恢复到现网即可. 要是没有备份 可能就会比较麻烦,找回数据的成本也是非常之高的. 下面介绍下 m ...

  8. MySQL(用户管理,常用sql语句,数据库备份恢复,MySQL调优,恢复误操作数据)...

    一.MySQL用户管理. 一个MySQL数据库里可以跑多个库,总不能给所有人的程序员root用户,则可以给他们单独的用户访问数据库. 创建用户:(grant all on *.* to 'user1' ...

  9. mysql dump 导出表_误删库,别跑路!教你一招MySQL 数据恢复

    日常工作中,总会有因手抖.写错条件.写错表名.错连生产库造成的误删库表和数据的事情发生.但是,如果每次删库都跑路的话,怕是再也不好找工作了吧!所以,删库跑路不是上上策. 1.前言 数据恢复的前提的做好 ...

最新文章

  1. C# richtextbox 自动下拉到最后 方法 RichTextBox读取txt中文后出现乱码
  2. 获得客户端的时区(get client-side time zone by JS)
  3. 动态规划——硬币找零和币值最大化问题
  4. 04- 移动APP功能测试要点以及具体业务流程测试
  5. Java for循环的几种用法
  6. JDK 9:NotNullOrElse方法已添加到Objects类
  7. mysql 如果存在修改_mysql如存在并发修改可能,一定要注意保证数据一致性
  8. 字典树 之 hdu 1247
  9. [渝粤教育] 西南科技大学 建筑工程质量缺陷事故分析及处理 在线考试复习资料
  10. 裘慧明:跟世界上最聪明的人博弈
  11. tp 框架防sql注入
  12. 【STM32技巧】使用STM32 HAL库的硬件I2C驱动RX8025T实时时钟芯片
  13. flink catalog 及dialect、数据转存分析
  14. 重庆SEO优化:网站通过SEO优化会有哪些好处以及【SEO优化】 深度了解蜘蛛spider抓取原理-专业SEO技术教程
  15. JavaScript高级第02天笔记
  16. Warpspeed 2021 DFINITY×IAF黑客松Demo Day落幕,10支队伍获奖
  17. C++11实现多线程电梯运行
  18. mysql thread conn_MySQL源码阅读2-连接与线程管理
  19. 王老吉药业“关爱烈日下最可爱的人”公益活动在杭启动
  20. Android 屏幕方向以及UI界面状态的保存

热门文章

  1. stm32结合TFLCD编程遇到的问题之.\Objects\EXTI_Project.axf: Error: L6218E: Undefined symbol POINT_COLOR (referre
  2. 关于如何用WORD实现图片转文字
  3. 揭秘曝光所有互联网赚钱的秘密及方法
  4. NewCoder:买苹果
  5. 抖音蓝V认证申请流程是怎么样的?
  6. C语言阶段小项目(火车购票系统)
  7. 趣味python3编程_Python趣味编程与精彩实例
  8. 带宽与宽带的区别是什么?
  9. Mysql数据库安装使用教程05:mysql启动停止服务+数据库及表的相关基础操作
  10. maven中的ArtifactId和groupId是什么