【故障處理】使用GC調整資料庫為SGA自動管理後導致例項無法啟動(ORA-00824)

secooler發表於2010-06-29
今天在一套RAC測試資料庫中出現了ORA-00824錯誤,導致一個節點在shutdown資料庫後無法啟動。
經分析,問題原因出在引數調整不全面上。問題出現在使用GC(Oracle Grid Control)將RAC一個節點調整為SGA自動管理後,由於遺留了db_block_buffers(該引數在10g中已經過時,需要替換為db_cache_size)引數導致資料庫在啟動時報“ORA-00824: cannot set sga_target due to existing internal settings, see alert log for more information”錯誤。

1.問題現象
SQL> startup
ORA-00824: cannot set sga_target due to existing internal settings, see alert log for more information

2.問題原因及處理方法
MOS中的“Startup of Instance fails with ORA-00824 Error [ID 279243.1]”文章全面的描述了這個問題的原因和處理方法,附錄在此,供大家參考。

 

  Modified 08-OCT-2008     Type PROBLEM     Status PUBLISHED  

In this Document
  
  
  


Applies to:

Oracle Server - Enterprise Edition - Version: 10.2.0.1 to 10.2.0.1
This problem can occur on any platform.

Symptoms

Startup of 10g Database Instance fails with ORA-00824 Error

SQL> connect / as sysdba
Connected to an idle instance.
SQL> startup
ORA-00824: cannot set sga_target due to existing internal settings

Cause

If you enable automatic SGA Management by setting SGA_TARGET >0 and also have db_block_buffers(Obsolete parameter) in your parameter file (pfile/spfile)

Startup of Database fails with ORA-00824 Error

Solution

A) Either you need to disable the Automatic SGA Mangement by setting SGA_Target=0

==OR==

B) Replace the db_block_buffers parameter with db_cache_size parameter

1. Create pfile using spfile if you do not have a pfile for this database
        sqlplus "/ as sysdba"
        create pfile from spfile;
2. Edit parameters needed to be changed.
3. Start sqlplus and connect / as sysdba
4. Issue startup pfile = ''
5. Create spfile from pfile.



3.小結
這個問題出現是比較偶然的,但也是危險的,如果有朋友使用GC做記憶體引數調整時千萬要注意。生產資料庫的調整儘量不要使用GC完成。

Good luck.

secooler
10.06.29

-- The End --

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/519536/viewspace-666641/,如需轉載,請註明出處,否則將追究法律責任。

相關文章