truncate之后为何不能flashback?
时间:2011-09-14
来源:互联网
从user_objects中可以看到,truncate之后的table的data_objcet_id发生了改变,oracle无法得知原来的block id,自然无法从undo中寻找数据了。
其实oracle完全可以再多做点工作,让truncate掉的table只要datafile上没有覆盖就可以flashback(当然,undo中的数据也要碰运气了)。drop掉的table都可以放入回收站,data_object_id应该也没啥问题吧。

作者: 我上面有人 发布时间: 2011-09-14
我回答上面这个问题吧。第一点。truncate是DDL操作,所以执行过的DML操作在执行DDL之后会被隐式提交。
如上所述,即使是delete操作 truncate之后。数据也不能flashback
作者: nkxu 发布时间: 2011-09-14
作者: yangtingkun 发布时间: 2011-09-14
作者: 我上面有人 发布时间: 2011-09-14
版主说的是flashback database吧。
恩,是这个意思,呵呵
作者: buptdream 发布时间: 2011-09-14
flashback是从undo中获取数据,但undo中的数据在commit之后随时可能会被覆盖,所以flashback是否成功要碰运气。如果是truncate掉的table,flashback就没办法了,即使你是先delete,然后再truncate的也不行。why?
我回答上面这个问题吧。第一点。truncate是DDL操作,所以执行过的DML操作在执行DDL之后会被隐式提交。
如上所述,即使是delete操作 truncate之后。数据也不能flashback
你这话跟没说有啥区别?????
作者: 我上面有人 发布时间: 2011-09-14
开启FLASHBACKUP ARCHIVE后,DDL操作后同样可以闪回查询
仅11gr2的 闪回归档 可以针对truncate 操作 闪回 查询
http://www.oracledatabase12g.com ... A2%9E%E5%BC%BA.html
作者: maclean 发布时间: 2011-09-14
版主说的是flashback database吧。
不是,两回事
作者: yangtingkun 发布时间: 2011-09-14
不是,两回事
请说明白点啊!
作者: g644516804 发布时间: 2011-09-14
开启FLASHBACKUP ARCHIVE后,DDL操作后同样可以闪回查询
flashback archive?
作者: foxmile 发布时间: 2011-09-14
热门阅读
-
office 2019专业增强版最新2021版激活秘钥/序列号/激活码推荐 附激活工具
阅读:74
-
如何安装mysql8.0
阅读:31
-
Word快速设置标题样式步骤详解
阅读:28
-
20+道必知必会的Vue面试题(附答案解析)
阅读:37
-
HTML如何制作表单
阅读:22
-
百词斩可以改天数吗?当然可以,4个步骤轻松修改天数!
阅读:31
-
ET文件格式和XLS格式文件之间如何转化?
阅读:24
-
react和vue的区别及优缺点是什么
阅读:121
-
支付宝人脸识别如何关闭?
阅读:21
-
腾讯微云怎么修改照片或视频备份路径?
阅读:28