oracle_利用闪回功能恢复数据】的更多相关文章

方便起见一般:执行如下即可不用往下看: ① 启用行移动功能 alter table tbl_a enable row movement; ② 闪回表数据到某个时间点 flashback table tbl_a to timestamp to_timestamp('2013-07-19 15:10:00','yyyy-mm-dd hh24:mi:ss'); 详解: 利用ORACLE的闪回功能恢复数据 一. 闪回表数据 从9i开始,Oracle提供了闪回(FLASHBACK)功能.使用FLASHBA…
利用闪回查看Oracle表历史时刻数据 1.查看表历史时刻数据 select * from tab_test AS OF TIMESTAMP to_timestamp('20140917 10:00:00','yyyymmdd hh24:mi:ss'); 2.利用flashback table恢复表到过去某一时刻 alter table tab_test enable row movement; flashback table tab_test to timestamp ('20140917 1…
我们在开发和运维过程中,经常遇到数据被误删除的情况.无论是在应用开发中的Bug,还是修改数据的时候,如果提交了错误数据修改结果,会带来很多问题.一般来说,一旦提交commit事务,我们是不能获取到之前的数据情况,除非使用较复杂的数据恢复手段,利用备份数据恢复. 但是在Oracle中,可以使用其闪回FlashBack特性来解决这个问题.首先,声明一点,闪回Flashback的范围很大,包括数据库.表.数据均是可以Flashback的,但是机制差别很大.本文说的是简单的数据flashback,用来快…
Oracle 中利用闪回查询确定某表在某时间点之后的修改内容: 1.查看 DELETE 及 UPDATE 操作修改的数据: SQL> SELECT * FROM tab AS OF TIMESTAMP  to_timestamp('time_point', 'yyyy-mm-dd hh24:mi:ss') MINUS SELECT * FROM tab; 其中将查询得 tab 表在 time_point 时点之后因 DELETE 及 UPDATE 操作修改的数据. 2.查看 INSERT 操作修…
利用闪回数据库(flashback)修复Failover后的DG环境 1.1  BLOG文档结构图 1.2  前言部分 1.2.1  导读和注意事项 各位技术爱好者,看完本文后,你可以掌握如下的技能,也可以学到一些其它你所不知道的知识,~O(∩_∩)O~: ① Failover后DG环境的恢复方法(重点) ② DG的基本维护操作 ③ GC客户端软件的安装 ④ 利用GC快速搭建一套DG环境 ⑤ Failover和Switchover的区别 ⑥ 其它维护操作 Tips: ① 本文在itpub(htt…
Oracle 闪回 找回数据的实现方法 闪回技术是Oracle强大数据库备份恢复机制的一部分,在数据库发生逻辑错误的时候,闪回技术能提供快速且最小损失的恢复.这篇文章主要介绍了Oracle 闪回 找回数据的实现方法,需要的朋友可以参考下 闪回技术是Oracle强大数据库备份恢复机制的一部分,在数据库发生逻辑错误的时候,闪回技术能提供快速且最小损失的恢复(多数闪回功能都能在数据库联机状态下完成).需要注意的是,闪回技术旨在快速恢复逻辑错误,对于物理损坏或是介质丢失的错误,闪回技术就回天乏术了,还是…
Flashback Version Query 闪回版本查询 使用Flashback Version Query  返回在指定时间间隔或SCN间隔内的所有版本,一次commit命令就会创建一个版本. 语法如下: SELECT .....FROM tablename VERSIONS {BETWEEN {SCN | TIMESTAMP} start AND end} --start,end可以是时间也可以是scn Flashback Version Query伪列说明 versions_start…
使用闪回技术,实现基于磁盘上闪回恢复区的自动备份与还原. 一.恢复表对象 1.创建学生表 create table STUDENT ( idno INTEGER, name VARCHAR2(30), sex VARCHAR2(30) ) 2.添加记录 insert into student (IDNO, NAME, SEX) values (1, '李云丽', '女'); insert into student (IDNO, NAME, SEX) values (2, '王强', ' 男 ')…
我们有个系统使用了Oracle flashback data archive闪回数据归档特性来作为基于时间点的恢复机制,在频繁插入.更新期间发现SYS_FBA_HIST_NNNN表中的XID被两个事务重用了,导致start_scn相同,于是在执行as of scn/timestamp查询的时候,相同rowid的记录会出来两条,无论是oracle 11.2.0.4还是oracle 18c都能重现,前者几乎100%,后者概率低很多(一开始LZ本地用18c跑了连续四五次都没有出现,以为解决了,后来测试…
用途: .数据快速回滚 .从binlog生成标准sql 使用限制: .必须设置binlog_format=ROW .binlog_row_image=full,该参数默认为FULL .恢复用户拥有的最小权限集合为:select, super/replication client, replication slave 建议授权 GRANT SELECT, REPLICATION SLAVE, REPLICATION CLIENT ON *.* TO 权限说明 select:需要读取server端i…
一.delete误删 方法1:如果表结构没有改变,直接闪回整个表,具体步骤: --首先需要表闪回权限,开启行移动功能 alter table 表名 enable row movement; --执行闪回恢复表数据到某个时间点 flashback table 表名 to timestamp to_timestamp(‘恢复的时间点','yyyy-mm-dd hh24:mi:ss'); --关闭行移动功能 alter table 表名 disable row movement; 方法2:查询被删除数…
        today,i'll have a test with the open source tool mysqlbinlog_flashback which is released by 58daojia,here's the github address:https://github.com/58daojia-dba/mysqlbinlog_flashback  this tool is similar with the binlog2sql which is also coded…
    today,i'll using the open source tool named "binlog2sql" which is release by danfengchao to do some flashback test.     here's the github address:https://github.com/danfengcao/binlog2sql     according to the readme.md doc,using "git&quo…
      last night,i've tested flashback by MyFlash tool,but failed,now let's do some other test with it.first of all,clear the test environment:drop the procedure and table created yesterday.   root@localhost:mysql3306.sock [(none)]::>show procedure s…
      MyFlash is an open source tool released by Meituan-Dianping which can be used to flashback MySQL DML data.here's the github link: https://github.com/Meituan-Dianping/MyFlash     after downloaded the tool and extracted the zip package,i got this…
使用限制: .binlog格式必须为row,且binlog_row_image=full. .仅支持5.6与5.. .只能回滚DML(增.删.改). .mysqlbinlog版本请保持一致. 1.安装安装依赖. yum install glib2 glib2-devel gcc git mysql mysql-devel -y yum groupinstall "Development tools" "Server Platform Development" 下载m…
一.undo空间原理: dml操作会产生undo数据. update时,sever process 会在databuffer 中找到该记录的buffer块,没有就从datafile中找并读入data buffer.在改动之前,原始数据先放到undo段,并在数据块头记录undo段(acitve 状态)中该数据块的位置,读写这个块时会占用事务槽,会将该事务号记录在数据块的头部.然后在进行update,并将该块放到dirty list检查点队列,等待dbwr进行写操作. 二.创建新的undo表空间替换…
己亥清爽系列说明:清爽系列是作为恢复系列的基础篇,基于FS(File System)文件系统的手工还原恢复,也叫基于用户管理的还原恢复,来自于博客园AskScuti. 实验说明:你不小心Drop掉了一张表数据,且没能及时反应过来,后面才恍然大悟,想利用闪回Drop技术进行闪回操作,可发现表空间被挤占,导致回收站里改表已被清空,又或者表是以Purge方式Drop掉的.如何进行手工不完全还原恢复操作.注:在数据文件.控制文件.在线日志和归档日志都完整的情况下. 基于版本:Oracle 11gR2 1…
oracle的闪回很早就出来了,准确的说一直以来应该都较少被真正用户广为使用,除了dba和极少部分开发人员偶尔用于逻辑出错.误删恢复之外,较少被用于产生更有价值的用途. 各种闪回表flashback table.flashback query.flashback transaction都有一定的适用场景,但是他们称不上和其他特性比如分区.并行那么自然和普遍适用性,同时数据存储在撤销表空间,而撤销表空间的性能对系统影响极大,大量的undo保留着会使得更多的顺序读变成随机读.直到oracle 11g…
通过DELETE删除数据后相当于放入回收站,一般情况下可以找回:通过UPDATE更新数据后数据库也会保留数据快照.闪回就是恢复指定时间的数据快照以达到恢复数据的目的.根据步骤一查询出数据快照,恢复数据自行决定(之前的数据都有了,咋恢复还不会吗?) 一.查询指定时间的数据快照--1.查询执行过SQL语句,确定快照的时间SELECT R.FIRST_LOAD_TIME,R.SQL_TEXT,R.* FROM V$SQLAREA R WHERE R.SQL_TEXT LIKE '%ABOUT YOUR…
 概述: 闪回技术是Oracle强大数据库备份恢复机制的一部分,在数据库发生逻辑错误的时候,闪回技术能提供快速且最小损失的恢复(多数闪回功能都能在数据库联机状态下完成).需要注意的是,闪回技术旨在快速恢复逻辑错误,对于物理损坏或是介质丢失的错误,闪回技术就回天乏术了,还是得借助于Oracle一些高级的备份恢复工具如RAMN去完成(这才是Oracle强大备份恢复机制的精髓所在啊)  撤销段(UNDO SEGMENT) 在讲闪回技术前,需要先了解Oracle中一个逻辑结构--撤销段.因为大部分闪回技…
Flashback 技术基于Undo segment基于内容的, 因此,限制UNDO_RETENTON参数. 要使用flashback 特征,您必须启用自己主动撤销管理表空间. 在Oracle 11g内部和外部使用的新功能:Oracle Flashback Data Archive. FDA通过将变化数据另外存储到创建的闪回归档区(Flashback Archive)中,以和undo差别开来, 这样就能够为闪回归档区单独设置存储策略,使之能够闪回到指定时间之前的旧数据而不影响undo策略. 在O…
(一)闪回技术概要 闪回技术是数据库备份与恢复的重要补充手段,主要包括以下7种特性: 特性 原理 数据库支持 闪回查询(Flashback Query) 利用undo表空间中的回退信息,查询过去某个时刻或SCN时表中数据的快照 Undo表空间配置 闪回版本查询(Flashback Version Query) 利用undo表空间中的回退信息,查询过去某个时间段或某个SCN段内数据的变化情况 Undo表空间配置 闪回事务查询(Flashback Transaction Query) 利用undo表…
[学习目标] Flashback Database 功能非常类似与RMAN的不完全恢复,它可以把整个数据库回退到 过去的某个时点的状态,这个功能依赖于Flashback log日志.比RMAN 更快速和高效.因 此Flashback Database可以看作是不完全恢复的替代技术. 本章主要内容是描述FLASHBACK 的使用. [本章要点] • 开启.配置闪回 • 使用闪回恢复数据 [关键术语] Flashback 闪回 RecycleBin 回收站 Timestamp 时间戳 System…
Oracle 闪回特性(FLASHBACK DATABASE) 本文来源于:gerainly 的<Oracle 闪回特性(FLASHBACK DATABASE) > -===================================== -- Oracle 闪回特性(FLASHBACK DATABASE) --===================================== 闪回技术通常用于快速简单恢复数据库中出现的认为误操作等逻辑错误,从闪回的方式可以分为基于数据库级别闪回.…
1.查看数据库归档和闪回状态,及环境准备SQL> archive log list;SQL> select flashback_on from v$database;关闭数据库,启动归档和闪回SQL> shutdown immediate;启动到mount模式SQL> startup mount;开启归档SQL> alter database archivelog;如果归档没有打开,打开归档[因为flashback依赖Media recovery,所以在打开flashback…
到目前为止,介绍的所有功能均不会直接将数据恢复为“以前”的样子.闪回查询只是查看,闪回数据归档只是延伸了闪回查询的时间窗口,闪回事务查询虽然提供了撤销SQL,但是否执行及如何执行还需要管理员进一步手动操作. 若是管理员决定撤销某个或某些事务,Oracle提供一个专门用来撤销事务的工具——闪回事务. 闪回事务又名撤销事务(Backout Transaction),能够撤销一个或多个事务的修改,其功能由一个名为DBMS_FLASHBACK.TRANSACTION_BACKOUT的存储过程实现.该存储…
一,flashback Oracle Flashback技术是一组数据库特性,它可以让你查看数据库对象的过去状态,或者将数据库对象返回到以前的状态,而无需使用基于时间点的介质恢复.根据数据库的变化,闪回特性可以更快的回退不想要的变化,而且相比介质恢复,对数据库可用性产生的影响更小. 利用闪回特性,你能够: 执行回到过去的数据查询 执行显示对数据库更改的详细历史的元数据的查询 将表或行恢复到之前的时间点 自动追踪和归档事务数据的更改 当数据库保持在线状态时,回退事务和与它相关的事务 flashba…
一.闪回查询(Flashback Query)1.闪回查询技术1.1 闪回查询机制    闪回查询是指利用数据库回滚段存放的信息查看指定表中过去某个时间点的数据信息,或过去某个时间段数据的变化情况,或某个事务对该表的操作信息等.为了使用闪回查询功能,需要启动数据库撤销表空间来管理回滚信息. 1.2 撤销段(UNDO SEGMENT)简介    大部分闪回技术都需要依赖撤销段中的撤销数据.撤销数据是反转DML语句结果所需的信息,只要某个事务修改了数据,那么更新前的原有数据就会被写入一个撤销段.事务…
--===================================== -- Oracle 闪回特性(FLASHBACK DATABASE) --===================================== 闪回技术通常用于快速简单恢复数据库中出现的认为误操作等逻辑错误,从闪回的方式可以分为基于数据库级别闪回.表级别闪回.事务 级别闪回,根据闪回对数据的影响程度又可以分为闪回恢复,闪回查询.闪回恢复将修改数据,闪回点之后的数据将全部丢失.而闪回查询则可 以查询数据被DML的…