请对重做日志和闪回数据库的闪回日志进行一个比较说明。
请对重做日志和闪回数据库的闪回日志进行一个比较说明。
我来答
添加附件
收藏
复制链接
微信扫码分享

在小程序上查看
分享
添加附件
问题补充
3条回答
默认
最新
闪回日志和重做日志的区别有:
— 说明闪回数据库
— 使用闪回表将表内容还原到过去的特定时间点
— 从删除表中进行恢复
— 使用闪回查询查看截止到任一时间点的数据库内容
— 使用闪回版本查询查看某一行在一段时间内的各个版本
— 使用闪回事务查询查看事务处理历史记录或行
首先从功能方面,闪回日志,仅作用于闪回数据库;而重做日志作用可大了,这里就不在赘述了(网上可以查查)。
然后是记录的连续性,闪回日志是不连续的定期记录块前向,而重做日志则做持续性记录。从对象范围而言,闪回日志只记录更改后的数据,而重做日志则记录数据库所有活动,包括DDL操作。
从创建与维护,初始中,闪回日志既无需DBA创建也不用DBA维护,它由OMF自动于闪回恢复区所指定的目录中创建。并通过分配储存位置给予空间。
从目标性质方面,使用闪回日志还原至块前向,而重做日志则执行前滚介质恢复。
从原理上,闪回日志不是由常规的日志写进程(LGWR)写入,而由RVWR(一个单独为闪回日志写进程而使用的)(Recovery Writer)写入,重做日志当然由日志写进程执行写入。
另一方面,在9i和10g(不包括11g)中闪回日志不能和重做日志一样进行自动归档,而是由单独的日志组记录,循环使用。并且闪回日志不能进行手工更改(除非禁用掉闪回数据库,系统自动删除所有闪回日志文件),无法作用于DDL操作。
使用时配合重做日志、控制文件执行还原。并且闪回日志可用性并不像重做日志那样强,如果必要时系统会自动删除闪回日志文件,以获得足够空间为其它事务提供工作区。
最后一点是闪回日志是块级记录,因而效率不如重做日志。写入相当的更改记录自然更浪费空间。


打赏 0

回答交流
提交
问题信息
请登录之后查看
邀请回答
暂无人订阅该标签,敬请期待~~
