• 配置闪回数据库
• 执行闪回数据库操作
• 监视闪回数据库
- 闪回数据库
闪回数据库操作:
• 作用类似于数据库的倒带按钮
• 可以在用户造成了逻辑数据损坏的情况下使用
闪回数据库
使用闪回数据库,通过还原自先前某个时间点以来发生的所有更改,可快速将数据库恢复到那个时间的状态。因为
不需要还原备份,所以此操作速度很快。可以使用此功能还原导致逻辑数据损坏的更改。
使用闪回数据库时,Oracle DB 可使用过去的块映像回退对数据库的更改。在正常数据库操作期间,Oracle DB 会不定期地将这些块映像记录在闪回日志中。闪回日志将按顺序写入并且不进行归档。Oracle DB 会自动在快速恢复区中创建、删除闪回日志和调整它的大小。你仅需出于监视性能目的而关注闪回日志,并确定为快速恢复区分配了多少磁盘空间以存放闪回日志。
使用闪回数据库倒回数据库所需的时间与需回退到多久以前以及目标时间之后发生的数据库活动量成比例。还原和恢复整个数据库所需的时间会长得多。闪回日志中的前像仅用于将数据库还原至过去的某一时间点,而前滚恢复则用于将数据库恢复到与过去某个时间一致的状态。Oracle DB 可将数据文件恢复至以前的时间点,但辅助文件除外,如初始化参数文件。闪回数据库还可用来辅助Data Guard 和恢复指导,以及用来同步已复制的数据库。
- 闪回数据库体系结构
启用闪回数据库功能时,会启动
RVWR(闪回写进程)后台进程。此后台进程按顺序将闪回数据库数据从闪回缓冲区写入闪回数据库日志,这些日志会被循环使用。随后,当发出FLASHBACK DATABASE命令时,系统使用闪回日志来还原到块的前像,然后使用重做数据前滚到所需的闪回时间。
启用闪回数据库的开销取决于数据库的读/写混合工作量。因为查询不需要记录任何闪回数据,所以工作量的写操作量越大,启用闪回数据库的开销就越高。
- 配置闪回数据库
SQL> SHUTDOWNIMMEDIATE
SQL> STARTUP MOUNT
SQL> ALTER DATABASE ARCHIVELOG;
如果数据库处于ARCHIVELOG 模式,则无需重新启动该数据库。
SQL> ALTER SYSTEM SET
DB_FLASHBACK_RETENTION_TARGET=2880 SCOPE=BOTH;
SQL> ALTER DATABASE FLASHBACK ON;
SQL> ALT