Oracle中出现ORA-01599错误的解决方法

上一篇 / 下一篇  2007-12-25 09:46:00 / 个人分类:数据天地

 

Oracle中出现ORA-01599错误的解决方法:

故障的具体现象现象:

Oracle数据库无法启动或者cluster系统无法切换。查看数据库日志文件$ORACLE_BASE/adminORCL/bdump/alert_ORCL.log有类似于ORA-01599: failed to acquire rollback

segment (49), cache space is full (currently has (48) entries) Error 1599 happened during db open, shutting down database类似的错误信息。

故障的细化分析:

在Orale数据库中,存在一个初始化参数max_rollback_segments,它代表了同时能够online的回滚段的个数。它的缺省值是max(30,TRANSACTIONS/TRANSACTIONS_PER_ROLLBACK_SEGMENT)。当初始化参数中指定(通过rollback_segments参数)或者缺省online的回滚段个数超过max_rollback_segments这个参数后数据库就无法启动。这个错误往往是由于用户在增加了回滚段之后只是修改了rollback_segments参数但没有修改max_rollback_segments参数导致的。或者用户增加了public回滚段,同时在初始化参数中注释掉了max_rollback_segments参数也会导致这个问题。

故障的处理方法:

你可以将oracle初始化参数中的max_rollback_segments修改为大于当前所有的回滚段的总数后再重起数据库即可。如果不知道当前到底有多少回滚段,可以先将这个值设置为100再重起数据库试试。如果还报告同样的错误就再提高此值直到成功为止。当数据库启动起来以后可以通过select count(*) from dba_rollback_segs来获得确切的回滚段个数后再去修改初始化参数。

日常维护:

增加回滚段时,大家需要注意max_rollback_segments和rollback_segments这几个参数之间的相互作用,最好同时在两个节点上我们都能具体的看一下


TAG: Oracle oracle

 

评分:0

我来说两句

显示全部

:loveliness: :handshake :victory: :funk: :time: :kiss: :call: :hug: :lol :'( :Q :L ;P :$ :P :o :@ :D :( :)

日历

« 2008-07-03  
  12345
6789101112
13141516171819
20212223242526
2728293031  

数据统计

  • 访问量: 1150
  • 日志数: 90
  • 建立时间: 2007-04-03
  • 更新时间: 2008-04-07

RSS订阅

Open Toolbar