【maxmem】利用Oracle的maxmem小工具得到系統可用記憶體大小

secooler發表於2009-12-02
在ORACLE_HOME/bin目錄下有很多有意義的工具,如耳熟能詳的exp(expdp)、imp(impdp)、rman等等。

其中有一個工具叫做“maxmem”,要知道這個可不是作業系統上的命令,這個命令是Oracle提供的,使用這個命令可以簡單快速地得到還有多少記憶體可用,以避免因可用記憶體不足1MB時資料庫出現ORA-04300錯誤。

當供Oracle使用的記憶體小於1M的時,當再有會話嘗試連線資料庫的時候就會收到ORA-04300錯誤,現在的主機記憶體配置的越來越大,也許見到這個報錯的機會少之又少了。
簡單檢視一下ORA-04300錯誤的描述資訊。
ora10g@asdlabdb01 /home/oracle$ oerr ora 04030
04030, 00000, "out of process memory when trying to allocate %s bytes (%s,%s)"
// *Cause:  Operating system process private memory has been exhausted
// *Action:

看一下maxmem帶給我們的簡單但實用的資訊。
ora10g@secDB /home/oracle$ which maxmem
/oracle/app/oracle/product/10.2.0/db_1/bin/maxmem
ora10g@secDB /home/oracle$ maxmem
Memory starts at:  178778112 ( aa7f000)
Memory ends at:   230627995642 (35b27feffa)
Memory available: 230449217530 (35a7d7fffa)

當知道每個會話連線大概耗用多少記憶體時,可以使用上面的可用記憶體結果計算出未來還可以有多少使用者可以連線到資料庫。

這個工具雖然簡單,但使用這個工具下意識的檢視一下系統的記憶體使用情況還是很便捷的。

Good luck.

secooler
09.12.02

-- The End --

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

相關文章