当前位置:文档之家› Oracle闪回(Flashback)技术

Oracle闪回(Flashback)技术

闪回数据库(Flashback Database):允许用户通过 Flashback Database语句,使数据库迅速地回滚到以前的某个 时间点或某个SCN(系统更改号)值时的状态。
闪回丢弃(Flashback Drop):类似于操作系统的垃圾 回收站功能,可以从中恢复被drop的表或索引。该功能基于 撤销数据。
11
16.3 闪回表
闪回表是将表恢复到过去的某个时间点的状态,为 DBA提供了一种在线、快速、便捷地恢复对表进行的修改 、删除、插入等错误的操作,可以讲指定表中的数据、索 引、触发器等恢复到指定的时间点。
如果数据库中所保留的数据不够执行恢复,可使用 标准的恢复过程恢复到过去的某个时间点上。
如果数据文件集没有保留足够的数据,则数据库会 返回一个错误,在这种情况下,可先使用数据文件脱机, 然后再发出语句恢复剩余的部分,最后再用标准方法恢复 这些脱机的数据文件。
10
ห้องสมุดไป่ตู้
主要内容
16.1 闪回技术概述 16.2 闪回数据库 16.3 闪回表 16.4 闪回查询 16.5 闪回版本查询 16.6 闪回事务查询 16.7 闪回丢弃 16.8 小结
用户可以从sysdate中得到系统的当前时间。 当用户发出FLASHBACK DATABASE语句之后,数 据库会首先检查所需要的归档文件与联机重建日志文件的可 用性。如果可用,则会将数据库恢复到指定的SCN或者时间 点上。
9
在数据库中闪回数据库的总数和大小由 DB_FLASHBACK_RETENTION_TARGET初始化参数控 制。可通过查询V$FLASHBACK_DATABASE_LOG视图 来确定能恢复到过去多远。
4
闪回查询(Flashback Query):查询过去某个时间点 或者某个SCN值时表中的数据信息。
闪回版本查询(Flashback Version Quary):查询过 去某个时间段或某个SCN段内表中数据的变化情况。
闪回事务查询(Flashback Transaction Query):查 看某个事务或所有事务在过去一段时间对数据进行的修改。
5
主要内容
16.1 闪回技术概述 16.2 闪回数据库 16.3 闪回表 16.4 闪回查询 16.5 闪回版本查询 16.6 闪回事务查询 16.7 闪回丢弃 16.8 小结
6
16.2 闪回数据库
闪回数据库能够使数据库迅速回滚到以前的某个时间点 或者某个SCN(系统更改号)上。这是大多数逻辑损害时恢 复数据库的最佳选择。Oracle系统为了使用数据库的闪回功 能,特别创建了另外一组日志,就是Flashback_logs(闪回日 志),记录数据库的闪回操作。
8
其中参数说明如下: l STANDBY:指定恢复备用的数据库到某个SCN或者
某个时间点上。如果没有备用数据库,则系统会返回一个错 误。如果省略STANDBY子项,则数据库可能是主数据库, 也可能是备用数据库。
l TO SCN <exp>:指定一个系统改变号SCN。 l TO BEFORE SCN <exp>:恢复到之前的SCN。 l TO TIMESTAMP:需要恢复的时间表达式。 l TO BEFORE TIMESTAMP:恢复数据库到之前的时间 表达式。
闪回表(Flashback Table):将表恢复到过去的某个 时间点或某个SCN值时的状态。
闪回技术最大的特点是实现自动备份与恢复,大大减 小了管理开销。当Oracle数据库发生人为故障时,不需要事 先备份数据库,就可以利用闪回技术快速而方便地进行恢复 。为了使用数据库的闪回技术,必须启用撤销表空间自动管 理回滚信息。如果要使用闪回删除技术和闪回数据库技术, 还需要启用回收站、闪回恢复区。
Oracle11g的FLASHBACK命令可以对表级进行恢复 ,也可以对数据库级进行恢复。要对数据库级进行恢复,就 要用到FLASHBACK DATABASE命令,语法格式如下:
FLASHBACK [STANDBY] DATABASE <database> {TO [SCN | TIMESTAMP] <exp> | TO BEFORE [SCN | TIMESTAMP] <exp>}
第十六章Oracle闪回(Flashback) 技术
本章概述 主要内容
1
本章概述
为了使Oracle数据库从任何逻辑误操作中迅速恢复, Oracle 数据库提供了一系列人为错误更正技术,称为闪回 。使用闪回(Flashback)技术可以实现基于磁盘上闪回 恢复区的自动备份与恢复。本章介绍与数据库闪回相关的 知识。闪回技术从oracle9i版本的闪回查询开始,在 Oracle10g版本中系统地使用,Oracle11g版本中进行了加 强。
2
主要内容
16.1 闪回技术概述 16.2 闪回数据库 16.3 闪回表 16.4 闪回查询 16.5 闪回版本查询 16.6 闪回事务查询 16.7 闪回丢弃 16.8 小结
3
16.1 闪回技术概述
为了使Oracle数据库从任何逻辑误操作中迅速恢复, Oracle 数据库提供了一系列人为错误更正技术,称为闪回。 传统上,从人为错误中恢复数据库唯一的办法就是采用用户 管理的备份和恢复技术。而闪回技术提供了从逻辑错误中恢 复的更有效和更快的方法,多数情况下,在用这种技术进行 恢复时数据库仍然联机并对用户可用。此外,闪回技术允许 选择性地复原某些对象。在Oracle11g中,闪回技术包括以下 方面:
因为恢复不再受数据库大小的影响,使用闪回数据库 恢复比用传统的恢复方法要快得多。也就是说,传统的恢复 时间(MTTR)是由所需重建的数据文件的大小和所要应用 的归档日志的大小决定的。而使用闪回数据库,恢复时间是 由恢复过程中需要备份的变化的数量决定的,而不是数据文 件和归档日志的大小。
7
闪回数据库的结构是由恢复写入器(RVWR)后台进 程和闪回数据库日志组成的。如果要启动闪回数据库功能, RVWR进程也要启动。闪回数据库日志是一种新的日志文件 类型,它包括物理数据块先前的“图像”。闪回恢复区是闪回 数据库的先决条件,因为RVWR进程要将闪回日志写入该区 域中,所以在使用闪回数据库功能时,必须首先配置闪回恢 复区。
相关主题