修改sga_target引起的ora-27100 bug嗎

dotaddjj發表於2011-10-13

今天測試sga_targetsga_max_size引數。由於公司電腦是512M的記憶體,oracle資料庫的sgapga都設定的很小。

Show parameter sga_target

顯示sga_target=96M,由於此前也沒有設定sga_max_size引數,預設的也是96M

Alter system set sga_target=120M scope=spfile

Alter system set sga_max_size=100M scope=spfile

然後重啟資料庫來驗證sga_max_size的引數也會隨著sga_target來改變。

Shutdown immediate

Startup

此時出現了ORA-27100: shared memory realm already exists

共享記憶體領域已經存在,覺得是系統記憶體太小sga分配不了導致資料庫無法啟動

好了重寫一個initorcl.ora吧,修改sga引數sga_target=96M sga_max_size=96M

此時制定pfile引數檔案來啟動資料庫

Startup pfile=’d:oracleproduct10.2.0databaseinitorcl.ora’ nomount

還是那個ORA-27100: shared memory realm already exists

咋回事啊,都改回了以前的引數還是不行啊,檢視可用記憶體還有200M了,應該夠了。又換了一個session,關了點電腦的程式還是包同樣的錯誤。

只好在os上處理下了。

Net stop oracleserviceorcl

關閉資料庫服務的歷程

Net start oracleserviceorcl

Cmd>sqlplus / as sysdba

Sql>startup;

這次居然ok了!而且還是用的sga_targetsga_max_size120M的引數

由於是在windows平臺上又是測試庫可以os來處理關閉資料庫,如果生產庫可真不敢跳過oracleos上亂動,用的是oracle 10.2.0.0也不知道是不是oraclebug

[@more@]

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

相關文章