Oracle闪回(flashback)功能详解

0    271    1

Tags:

👉 本文共约4979个字,系统预计阅读时间或需19分钟。

什么是闪回?闪回有哪些分类?

Oracle闪回技术从根本上改变了数据恢复策略,利用闪回技术,可以使更正错误的时间大大缩短,而且它简单易用,使用一条短命令便可恢复整个数据库,而不必执行复杂的程序。闪回技术是Oracle数据库独有的特性,支持各级恢复,包括行、事务、表、表空间和数据库范围。采用闪回技术,可以针对行级和事务级发生过变化的数据进行恢复,减少了数据恢复的时间,而且操作简单,通过SQL语句就可以实现数据的恢复,大大提高了数据库恢复的效率。
Oracle中闪回技术分类图如下所示:

Oracle闪回(flashback)功能详解

闪回技术分类:

(1)闪回查询(Flashback Query):查询过去某个时间点或某个SCN值对应的表中的数据信息,即从回滚段中读取一定时间内对表进行操作的数据,恢复错误的DML操作。

(2)闪回版本查询(Flashback Version Query):查询过去某个时间段或某个SCN段内表中数据的变化情况。

(3)闪回事务查询(Flashback Transaction Query):查看某个事务或所有事务在过去一段时间对数据进行的修改。

(4)闪回表(Flashback TABLE):将表恢复到过去的某个时间点或某个SCN值时的状态。

(5)闪回删除(Flashback DROP):将已经删除的表及表上的索引恢复到删除前的状态,但索引名不会恢复到删除前的状态。

(6)闪回数据库(Flashback Database):将数据库恢复到过去某个时间点或某个SCN值时的状态。

有关闪回需要注意以下几点:

(1)闪回查询、闪回版本查询、闪回事务查询以及闪回表主要是基于回滚(Undo)表空间中的回滚信息实现的。

(2)闪回删除是基于Oracle中的回收站(Recycle Bin)特性实现的。

(3)闪回数据库是基于闪回恢复区(Flash Recovery Area)中的闪回日志来实现的。

(4)闪回数据归档是基于闪回归档区中的数据来实现的。

Oracle闪回(flashback)功能详解

Oracle闪回(flashback)功能详解

闪回查询(Flashback Query)

闪回查询分为基于AS OF TIMESTAMP和基于AS OF SCN的闪回查询,如下所示:

闪回查询示例:

闪回版本查询(Flashback Version Query)

查询语句一般为:

其中,VERSIONS BETWEEN用于指定闪回版本查询时查询的时间段或SCN段;AS OF用于指定闪回查询时查询的时间点或SCN。在闪回版本查询的目标列中,可以使用下列几个伪列返回版本信息:

标签:

Avatar photo

小麦苗

学习或考证,均可联系麦老师,请加微信db_bao或QQ646634621

您可能还喜欢...

发表回复

嘿,我是小麦,需要帮助随时找我哦。
  • 18509239930
  • 个人微信

  • DB宝
  • 个人邮箱
  • 点击加入QQ群
  • 个人微店

  • 回到顶部