ORA-00381的具体处理办法

本文介绍了解决Oracle数据库启动时遇到ORA-00381错误的方法。该错误通常发生在同时设置了旧版参数(如db_block_buffers)和新版参数(如db_cache_size)的情况下。通过调整参数配置,可以有效避免这一问题。
ORA-00381的具体处理办法
启动10g的oracle控制台
$ emctl start dbconsole
==================================================

ORA-00381的具体处理办法
 
环境:aix5.3 + oracle10.2,内存是自动管理分配,改手工设置内存后就出现此现象了。
当修改完Oracle SGA参数之后(修改了db_cache_size),启动Oracle时报错ORA-00381

原因是:
Cause:  User specified one or more of { db_cache_size ,
        db_recycle_cache_size, db_keep_cache_size, db_nk_cache_size (where
        n is one of 2,4,8,16,32) } AND one or more of { db_block_buffers ,
        buffer_pool_keep , buffer_pool_recycle }. This is illegal.
Action: Use EITHER the old (pre-Oracle_8.2) parameters OR the new ones.
        Don't specify both. If old size parameters are specified in the
        parameter file, you may want to replace them with new parameters
        since the new parameters can be modified dynamically and allow you
        to configure additional caches for additional block sizes.
 
检查结果:
检查发现更改10g内存时使用了 db_block_buffers 旧参数 和 db_cache_size新参数
 
处理方案:
要去掉旧参数的使用,即把db_block_buffers 去掉
 
1, 先shutdown ,然后把spfile变成可编译的pfile:
 SQL> shutdown immediate
 SQL> create pfile from spfile
 
2, 将pfile中的 db_block_buffers 删掉(注意做备份)
   cp initjitdb.ora initjitdb_bak.ora
   vi /oracle/app/product/10.2/dbs/initjitdb.ora 去掉db_block_buffers项
  
3, 然后使用修改过的pfile 启动
   SQL> startup pfile='/oracle/app/product/10.2/dbs/initjitdb.ora'
 
4, 接下来,创建spfile:
   SQL> create spfile from pfile='/oracle/app/product/10.2/dbs/initjitdb.ora'
 
5, 创建完后,
   SQL> shutdown immediate
   SQL> shutdown startup
 
6, 现在Oracle缺省使用spfile启动了,此时再修改SGA,POOL等的大小
   SQL> alter system set sga_max_size=256M scope=spfile;
   SQL> alter system set shared_pool_size=64m scope=spfile;
   SQL> alter system set db_cache_size=64m scope=spfile;
   SQL> alter system set large_pool_size=16M scope=spfile;
 
7, 再次重启Oracle, 问题解决
   SQL> shutdown immediate
   SQL> shutdown startup
 
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值