使用查询恢复误删除的数据某日,一个朋友的数据库数据被误操作删除(delete)掉了,并且已经提交请求请我帮忙进行恢复。数据库版本是Oracle 10g Release 2的,我首先想到的是使用Flashback Query进行恢复,不幸的是出现了ORA- 01555,数据已经不能被回了。Oracle从9i开始推出的查询特性被一直不断增强着,查询通过对滚段中存储的前镜像数据进行追
相比于全备+binlog恢复,flashback 是动作更小的恢复方式。简单来说就是通过工具解析 binlog 生成与误操作相反的SQL,比如 delete 则反向生成 insert,再执行一遍即可恢复数据。第一个实现该功能的是彭立勋,他在 MySQL 5.5 版本上实现,并将其提交给 MariaDB,Oracle MySQL 并没有推出这个功能,由于跟版本绑定比较深,使用上不是很广泛。美团点评陆
# MySQL查询实现指南 ## 1. 简介 在介绍MySQL查询之前,我们先来了解一下什么是查询查询指的是在数据库中查询某个特定时间点的数据,而不是查询当前最新的数据。这对于一些需要追溯历史数据的应用场景非常有用。 MySQL提供了一种名为查询(Flashback Query)的机制,用于实现查询。在MySQL 5.7及以上版本中,我们可以通过设置系统变量`syst
原创 2023-10-07 15:09:12
603阅读
MySQL DBA或开发人员,有时会误删或者误更新数据,如果是线上环境并且影响较大,就需要能快速回滚。传统恢复方法是利用备份重搭实例,再应用去除错误sql后的binlog来恢复数据。此法费时费力,甚至需要停机维护,并不适合快速回滚。也有团队利用LVM快照来缩短恢复时间,但快照的缺点是会影响mysql的性能。MySQL(flashback)利用binlog直接进行滚,能快速恢复且不用停机。
文章目录一、 MySQL工具1.1 binlog2sql1.2 MyFlash二、总结 一、 MySQL工具1.1 binlog2sqlbinlog2sql安装包及依赖包asn1crypto-master.zip cairocffi-master.zip cryptography-master.zip ipaddress-master.zip pycparser-master.zip P
# MySQL查看查询 查询MySQL数据库中的一个非常有用的功能,它可以让用户查询数据库中已删除或者修改的数据。在实际应用中,有时候我们会不小心删除了一些重要数据,或者需要查看数据库某个时间点的数据状态,这时候查询就可以派上用场了。 ## 什么是查询 查询是通过MySQL的日志文件实现的一种功能,它可以让用户回溯到任意时间点的数据,以达到查询已删除或修改数据的目的。在
原创 3月前
60阅读
文章目录前言一、认识?二、启用步骤1.检查是否开启功能2.开启数据库功能3.查看滚段记录保存时间三、测试数据1、构造测试数据2、删除数据测试功能总结 前言  数据库的功能可以说是DBA的大杀器之一,当数据库被错误操作导致数据丢失时,通过可以非常方便快速的恢复数据,在日常运维,故障处理、"数据恢复炫技"有着广泛的应用,学好再也不怕数据被误删啦。一、认识?   
####存储过程被覆盖 客户测试库存储过程直接覆盖了生产库存储过程,中间没有进行验证以及备份。通过以下查询尝试找回 select TEXT from dba_source as of timestamp TO_TIMESTAMP('2021-09-16 16:00:00', 'YYYY-MM-DD ...
转载 2021-09-17 13:47:00
94阅读
2评论
一、概述binlog2sql是一个开源项目,应用于大众点评线上环境。类似于ORACLE中的功能,binlog2sql可以基于时间点或者位置偏移量进行数据恢复。从MySQL binlog解析出你要的SQL。根据不同选项,你可以得到原始SQL、滚SQL、去除主键的INSERT SQL等。也就是对于insert操作会生成对应的delete语句,反之delete操作会生出对应的insert语句,up
转载 2023-10-26 19:45:19
91阅读
关键字:mysql,binlog2sql0、技术与工具简介mysql工具比较流行三大类:【0.1】官方的mysqlbinlog:支持数据库在线/离线,用脚本处理binlog的输出,转化成对应SQL再执行。通用性不好,对正则、sed等需要较高熟练度。【0.2】第三方的mysqlbinlog工具,比官方的工具多了一个功能 -B【0.3】开源的binlog2sql:兼容性比较好,使用难度
转载 11月前
56阅读
测试查询功能
原创 2022-12-02 19:28:08
205阅读
create table t1 as select * from dba_objects;SCOTT@ORA12C> select sysdate from dual;SYSDATE-------------------2015-09-20 14:54:101 row selected.SCOTT@ORA12C> delete from t1;0 rows deleted.SCOTT@
原创 2015-09-20 15:50:22
753阅读
MySQL工具—my2sqlmy2sql是使用go语言开发的MySQL binlog解析工具,通过解析MySQL binlog ,可以生成原始SQL、滚SQL、去除主键的INSERT SQL等,也可以生成DML统计信息。类似工具有binlog2sql、MyFlash、my2fback等,本工具基于my2fback、binlog_rollback工具二次开发而来。my2sql的GitHub地址
转载 2023-08-31 19:53:54
111阅读
一、技术的意义  在没有技术之前,如果一个不小心,手一抖,有时会误删数据或者误更新数据。  通常遇到这种事,传统恢复方法是利用备份重搭实例,再应用 binlog 到误操作的前一刻。再把数据导出来,导入到生产中。此法费时费力,甚至需要停机维护,并不适合快速回滚。  MySQL(flashback)利用直接进行滚到误操作的前一刻。DBA兄弟再也不需要每天练10公里了。 二、bi
转载 2023-08-04 14:34:40
1177阅读
利用binlog2sql快速误删除数据 - 别拿豆包不当干粮各位兄弟们,好久不见了!最近一直忙于新书的创作,所以一直没有时间更新博客。不知道这段时间大家学习得怎么样,希望大家通过看我的文章给大家带来帮助。老张我也花费了大量时间录制一些数据库的视频课程,大家要是感兴趣,也可以去学习,不要错过啊!今儿抽出时间,给大家分享一篇利用binlog2sql工具,来恢复误删除的数据。我们都知道binlo
 生产上误删数据、误改数据的现象也是时常发生的现象,作为运维这时候就需要出来补锅了,最开始的做法是恢复备份,然后从中找到需要的数据再进行修复,但是这个时间太长了,对于大表少数数据的修复来讲,动作太大,成本也大。当然还有其他的一些操作方法,我们今天有主角。 MySQL 工具 --   binlog2sql用途数据滚主从切换后数据不一致的修复从 binlo
适用范围:mysql数据库,包括mysql、mariadbgithub:  https://github.com/danfengcao/binlog2sql.git 前提条件:1)配置要求 [mysqld] server_id = 1 log_bin = /var/log/mysql/mysql-bin.log max_binlog_size = 1G binlog_format = r
关键字:mysql,binlog2sql0、技术与工具简介mysql工具比较流行三大类:【0.1】官方的mysqlbinlog:支持数据库在线/离线,用脚本处理binlog的输出,转化成对应SQL再执行。通用性不好,对正则、sed等需要较高熟练度。【0.2】第三方的mysqlbinlog工具,比官方的工具多了一个功能 -B【0.3】开源的binlog2sql:兼容性比较好,使用难度
转载 2023-10-23 19:53:59
126阅读
1. 简介mysqlbinlog flashback()用于快速恢复由于误操作丢失的数据。在DBA误操作时,可以把数据库恢复到以前某个时间点(或者说某个binlog的某个pos)。比如忘了带where条件的update、delete操作,传统的恢复方式是利用全备+二进制日志前滚进行恢复,相比于传统的全备+增备,flashback显然更为快速、简单。目前MySQL的flashback功能是利用b
转载 2023-06-14 01:36:56
154阅读
DBA或开发人员,有时会误删或者误更新数据,如果是线上环境并且影响较大,就需要能快速回滚。传统恢复方法是利用备份重搭实例,再应用去除错误sql后的binlog来恢复数据。此法费时费力,甚至需要停机维护,并不适合快速回滚。也有团队利用LVM快照来缩短恢复时间,但快照的缺点是会影响mysql的性能。MySQL(flashback)利用binlog直接进行滚,能快速恢复且不用停机。本文将介绍
转载 2023-10-04 19:48:15
115阅读
  • 1
  • 2
  • 3
  • 4
  • 5