您的位置:首页 > 其它

调整SGA_MAX_SIZE无法启动实例的问题的解决

2010-12-15 18:00 417 查看
用oracle用户在sqlplus下面startup时,系统提示如下:

ORA-00824: cannot set sga_target due to existing internal settings, see alert log for more information

看来是sga_target这个参数设置的有问题。在网上查了查sga_target参数的信息(具体可见我的另外一篇转载的文章:ORACLE10--SGA_MAX_SIZE与SGA_TARGET),了解到它是oracle10里新的内存参数,用于动态调整SGA内存的各组成部分。它的内容同样是存储在spfile中。

在此之前,在另一片文章ORACLE9i——优化SGA最大值超过1.7G后导致实例无法启动 中,通过pfile和spfile之间的关系解决了因调整SGA_MAX_SIZE无法启动实例的问题,那么利用这种关系同样可以解决今天sga_target的问题。

而且,经过实践我发现,上次使用的方法太过于繁琐,今天通过实践找到一个简便方法。

但是思路都是一样的:想办法把sga_target的值修改到正常阀值内,然后再启动数据库实例

按照这种思路:

1、我们完全可以先用pfile的配置参数启动数据库实例

2、通过pfile重建spfile文件(create spfile from pfile)

3、关闭数据库实例

4、正常启动数据库实例

具体的操作如下:

[oracle@redhat pfile]$ sqlplus /nolog

SQL*Plus: Release 10.2.0.1.0 - Production on Tue Oct 20 00:20:19 2009

Copyright (c) 1982, 2005, Oracle. All rights reserved.

SQL> conn /as sysdba

Connected to an idle instance.

SQL> startup pfile='/home/oracle/admin/zgz/pfile/init.ora.82220096537'

--“通过pfile文件启动oracle实例”

ORACLE instance started.

Total System Global Area 285212672 bytes

Fixed Size 1218968 bytes

Variable Size 88082024 bytes

Database Buffers 188743680 bytes

Redo Buffers 7168000 bytes

Database mounted.

Database opened.

SQL> create spfile from pfile='/home/oracle/admin/zgz/pfile/init.ora.82220096537';--“通过pfile重建spfile文件”

File created.

SQL> shutdown immediate --"关闭数据库实例"

Database closed.

Database dismounted.

ORACLE instance shut down.

SQL> startup --"通过spfile文件正常启动oracle实例"

ORACLE instance started.

Total System Global Area 285212672 bytes

Fixed Size 1218968 bytes

Variable Size 88082024 bytes

Database Buffers 188743680 bytes

Redo Buffers 7168000 bytes

Database mounted.

Database opened.

SQL>

非原创
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: