Oracle中的sysctl.conf內(nèi)核參數(shù)
當(dāng)我們對Oracle進行安裝部署時,需要按照相關(guān)要求修改OS內(nèi)核參數(shù),下面對Oracle按照部署時需要修改的相關(guān)內(nèi)核參數(shù)進行簡單介紹。
注:OS的內(nèi)核參數(shù)大多數(shù)存放在/proc/sys目錄下,可以在系統(tǒng)運行時進行更改,但是當(dāng)系統(tǒng)重新啟動時會失效,而通過/etc/sysctl.conf文件可以永久生效修改后的內(nèi)核參數(shù)。
sysctl -p
該命令可以立即生效sysctl.conf中配置的內(nèi)核參數(shù)。
kernel.shmall
shmall表示共享內(nèi)存總量,以頁為單位, 而shmall默認(rèn)為4294967296 已經(jīng)足夠大了,一般不需要調(diào)整,shmall不能低于SGA大小,若shmall低于SGA大小,實例啟動時會報:ORA-27123: unable to attach to shared memory segment錯誤,且無法啟動實例。
kernel.shmmax
shmmax參數(shù)用來定義單個共享內(nèi)存段的最大值,該值應(yīng)該配置足夠大,能夠在一個共享內(nèi)存段中容下整個的SGA ,如果配置過低可能導(dǎo)致需要創(chuàng)建多個共享內(nèi)存段,這樣可能會導(dǎo)致系統(tǒng)性能下降。
269838450688/1024/1024/1024=252GB。
shmmax的單位為Byte(字節(jié))。
vm.min_free_kbytes
該參數(shù)表示Linux VM最低保留多少的空閑內(nèi)存空間,當(dāng)可用的內(nèi)存低于配置參數(shù)時,系統(tǒng)會進行cache內(nèi)存的回收,來進行內(nèi)存的釋放。
單位是kb,524288/1024=512M。
kernel.sem
sem是semaphores的縮寫,進程間通信--信號量,kernel.sem中4個參數(shù)分別對應(yīng)SEMMSL SEMMNS SEMOPM SEMMNI
SEMMSL: 每個信號集的最大信號數(shù)量 ,一般該參數(shù)配置為數(shù)據(jù)庫中最大 PROCESS 參數(shù)的設(shè)置值加上 10,Oracle 建議 SEMMSL 不低于100。
SEMMNS:控制整個系統(tǒng)中信號量的最大數(shù)量,使用以下計算公式來確定系統(tǒng)中需要配置的信號的最大數(shù)量,(SEMMSL * SEMMNI)=SEMMNS。4096*128=524288。
SEMOPM: 該參數(shù)表示在一個 semop call中,每個信號量所允許的最大操作數(shù)量,一個信號集可以擁有每個信號集當(dāng)中的最大數(shù)量SEMMSL 信號,建議 SEMOPM 等于SEMMSL 。 Oracle 建議SEMOPM的值不低于 100 。
SEMMNI:該參數(shù)用于控制整個系統(tǒng)中信號集的最大數(shù)量。Oracle 建議SEMMNI 的值不低于 100 。
fs.file-max
該參數(shù)表示系統(tǒng)級別最大可以打開文件句柄的數(shù)量,文件句柄代表系統(tǒng)中可以打開文件的數(shù)量。
net.ipv4.ip_local_port_range
該參數(shù)配置向外連接端口范圍,缺省為1024到4999。
net.ipv4.ipfrag_*
net.ipv4.ipfrag_low_thresh
net.ipv4.ipfrag_high_thresh
系統(tǒng)中當(dāng)數(shù)據(jù)包傳輸發(fā)生錯誤,會進行碎片整理,有效的數(shù)據(jù)包被保留,而無效的數(shù)據(jù)包被丟棄,ipfrag參數(shù)指定了碎片整理時的最大/最小內(nèi)存。
net.core.rmem_*
net.core.rmem_default默認(rèn)數(shù)據(jù)接收窗口大小。
net.core.rmem_max最大數(shù)據(jù)接收窗口大小。
net.core.wmem_default默認(rèn)數(shù)據(jù)發(fā)送窗口大小。
net.core.wmem_max最大數(shù)據(jù)發(fā)送窗口大小。
單位均為字節(jié)。
fs.aio-max-nr
該參數(shù)表示最大并發(fā)異步I/O請求數(shù)量,當(dāng)系統(tǒng)中存在非常高的I/O請求時,如果該參數(shù)配置過低,可能導(dǎo)致數(shù)據(jù)庫報ORA-27090 - Unable to Reserve Kernel Resources for Asynchronous Disk I/O錯誤,遇到該問題需將fs.aio-max-nr調(diào)整為Oracle建議值3145728。
注:Doc ID 579108.1
kernel.shmmni
該參數(shù)為共享內(nèi)存段的最大數(shù)量,缺省值為4096 ,一般情況下無需調(diào)整。
vm.nr_hugepages
該參數(shù)指定采用大頁內(nèi)存,大頁內(nèi)存數(shù)量,單位為個數(shù)。
