ITPub博客

首页 > 数据库 > Oracle > 修改默认的undo_retention参数设置

修改默认的undo_retention参数设置

原创 Oracle 作者:yaoronghui2005 时间:2009-09-28 16:40:13 0 删除 编辑
http://203.208.39.132/search?q=cache:moSKLP4q_s0J:school.cnd8.com/oracle/jiaocheng/37407.htm+Oracle+UNDO_RETENTION&cd=4&hl=zh-CN&ct=clnk&gl=cn&client=aff-360homepage&st_usg=ALhdy284cNxsbtRS5YZXuQC3mMRz995GUw[@more@]

昨天,一个朋友的数据库数据被误操作删除掉了,请求我帮忙进行恢复。

数据库版本是Oracle10g Release 2的,我首先想到的是使用Flashback Query进行闪回恢复,不幸的是ORA-01555,数据已经不能被闪回了。

查看当时的数据库参数undo_retention设置,发现这个参数被在10g中缺省的被设置为900秒,这个时间长度是不足够的。

马上将这个参数修改为10800,3个小时:

ALTER SYSTEM SET undo_retention=10800 SCOPE=BOTH;

记得以前一度这个参数的缺省值被设为10800,可是随之而来的是UNDO表空间的过分扩展,难以回收,Oracle在不同版本中,也在进行不停的加权和折中。

Oracle也许会这样想:如果很少有人使用Flashback Query,而过大的undo_retention又会带来麻烦,那么干脆,设小点。

恢复之后,将朋友的另外几个数据库的undo_retention同样修改为10800。
这一设置,应该被更新如安装手册,安装完数据库后即刻作出调整。

另外一点需要记录的是,误删除操作是由于应用程序逻辑错误导致的,这种情况真是屡见不鲜;8.31时还处理过一个重大故障,同样是由于程序编写错误,导致数据库崩溃。
可见,我们的程序员们在编码过程中,同样疏忽不得。

来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/450962/viewspace-1027440/ ,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论
  • 博文量
    153
  • 访问量
    176623