linux kernel.shmall shemax shemin解釋

來源:互聯網
上載者:User

linux kernel.shmall shemax shemin解釋 Linux X86-64作業系統,Oracle 10g資料庫,由8G加到16G,把kernel.shmmax參數改到17179869184(16G)後,發現只要修改sga_max_size和sga_target參數到超過8G,Oracle就會報記憶體不夠無法啟動,檢查另外兩個共用記憶體參數相關參數:kernel.shmall和kernel.shmmni,kernel.shmall參數是控制共用記憶體頁數,kernel.shmmni參數是控制共用記憶體段總數,目前的參數值是4096,足夠大了,那麼問題應該是出在kernel.shmall上,用8589934592(8G)除以當前的參數值2097152,結果是4096,說明頁大小是4K,現在要把SGA調到大於8G,就要調大kernel.shmall參數,調整到當前值的2倍(4194304)後,就可以成功地將sga設定到13G了。 對於32位系統,一頁=4k,也就是4096位元組。 kernel.shmall = 2097152  就是 2097152*4k/1024/1024 = 8G 就是說可用共用記憶體一共 8G 上面shmmax = 2G 512 32000 100 100 >/proc/sys/kernel/sem 分別是指什麼SEMMSL(每個使用者擁有訊號量最大數量),SEMMNS(系統訊號量最大數量),SEMOPM(每次semop系統叫用作業數),SEMMNI(系統訊號量集最大數量) REDHAT AS4 kernel.sem設定參考 在安裝oracle 之前通常需要設定kernel.sem這個參數,下面對些作簡單介紹sem其實是semaphores的縮寫,查看當前設定[oracle@ebsse oracle]$ cat /proc/sys/kernel/sem250 32000 100 1284個資料分別對應SEMMSL SEMMNS SEMOPM SEMMNI如當oracle DB初始化參數檔案中PROCESSES參數設定較大時,需要調整SEMAPHORES設定SEMMSL應該設定為伺服器中各個執行個體中最大的PROCESSES參數+10,例如,當最大的PROCESSES參數為5000時,SEMMSL應設定為5010。SEMMNS參數應設定為SEMMSL*SEMMNI,接上例SEMMSL為5010,SEMMNS參數應為(5010*128)=641280。SEMOPM參數應設定與SEMMSL參數相同,接上例此處應設定為5010更改當前SEMAPHORES參數設定:[oracle@ebsse oracle]$ suPassword:[root@ebsse oracle]# echo "5010 641280 5010 128" > /proc/sys/kernel/sem[root@ebsse oracle]# cat /proc/sys/kernel/sem5010 641280 5010 128如需啟動時自動應用,可在/etc/sysctl.conf增加:kernel.sem =5010 641280 5010 128

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.