oracle sga配置相關的os 核心引數

wisdomone1發表於2009-11-22
1.kernel.shmmax(原則就是一個sga一個共享記憶體段)
shmmax核心引數定義單個共享記憶體段的最大值,如果該引數設定小於Oracle SGA設定,那麼SGA就會被分配多個共享記憶體段。
這在繁忙的系統中可能成為效能負擔,帶來系統問題。

可以透過ipcs命令檢視此設定下共享記憶體的分配,我們可以看到Oracle分配了多個共享記憶體段以滿足SGA設定的需要:

ipcs -sa

2.kernel.shmall(原則就是乘以4要大於所要分配的sga)
這個是一次可以使用的記憶體最大的頁數
2097152  * 4k/頁  = 8G  所以sga 無法跨越8G

kernel.shmall 引數是控制共享記憶體頁數 。Linux 共享記憶體頁大小為4KB, 共享內
存段的大小都是共享記憶體頁大小的整數倍。一個共享記憶體段的最大大小是16G,那麼需
要共享記憶體頁數是 16GB/4KB=16777216KB/4KB=4194304 (頁),也就是64Bit 系統下
16GB 實體記憶體,設定 kernel.shmall = 4194304 才符合要求(幾乎是原來設定2097152
的兩倍)。

3.kernel.shmmni (原則上不用改)
shmmni 核心引數是共享記憶體段的最大數量。shmmni 預設值 4096 ,一般肯定是夠用了 。

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

相關文章