Ask Hoegh(1)——临时表会产生redo吗?
2016-01-04 15:02
731 查看
问:临时表会产生redo吗?
Hoegh:严格意义上来说,会产生redo。
临时表不会为他们的块生成redo,因此,对临时表的操作不是可恢复的。修改临时表中的一个块时,不会讲这个修改记录记录到重做日志文件中。不过,临时表会产生undo,而这个undo会记入日志。因此,临时表也会生成一些redo。
那么,临时表为什么要支持undo呢?这是因为临时表一般情况下表现得和正常表一样,支持事务、支持约束,这样如果在事务中执行失败是要回滚这条语句的。
根据Tom的测试结果,关于临时表上的DML活动,可以得出以下一般结论:
hoegh 2016.01.04 -- The End --
Hoegh:严格意义上来说,会产生redo。
临时表不会为他们的块生成redo,因此,对临时表的操作不是可恢复的。修改临时表中的一个块时,不会讲这个修改记录记录到重做日志文件中。不过,临时表会产生undo,而这个undo会记入日志。因此,临时表也会生成一些redo。
那么,临时表为什么要支持undo呢?这是因为临时表一般情况下表现得和正常表一样,支持事务、支持约束,这样如果在事务中执行失败是要回滚这条语句的。
根据Tom的测试结果,关于临时表上的DML活动,可以得出以下一般结论:
- Insert操作会产生很少甚至不产生undo/redo活动
- Delete操作在临时表上产生的redo和在普通表上生成的redo一样多
- Update操作会产生普通表一半的redo
hoegh 2016.01.04 -- The End --
来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/30162081/viewspace-1970753/,如需转载,请注明出处,否则将追究法律责任。
转载于:http://blog.itpub.net/30162081/viewspace-1970753/
相关文章推荐
- Oracle中临时表产生过量Redo的说明
- 普通表与临时表DML操作会产生REDO/UNDO对比与分析
- Oracle中临时表产生过量Redo的说明
- 普通表与临时表DML操作会产生REDO/UNDO对比与分析
- Oracle中临时表产生过量Redo的说明
- Oracle中临时表产生过量Redo的说明
- Oracle中临时表产生过量Redo的说明
- script:查看redo产生的历史信息
- 临时表 DML 产生redo 问题说明
- rollback产生redo及logmnr查看日志内容
- 临时表 DML 产生redo 问题说明
- 测试4——shrink和move产生的redo log量的比较
- 如何计算某个sql语句所产生的redo和undo大小?
- oracle 下操作blob字段是否会产生大量redo
- 如何计算某个sql语句所产生的redo和undo大小?
- 估算的redo重做日志产生量
- 如何计算某个sql语句所产生的redo和undo大小?
- oracle 在操作blob该字段是否会产生很多redo
- 动态性能视图v$mystat,v$sesstat,v$statname学习(为了学习如何得sql产生的redo信息)
- 系统产生大量redo,怀疑与昨天测试streams ,suppolemental log 有关!