Linux Hugepage ,AMM及 USE_LARGE_PAGES - 3

tolywang發表於2014-05-27

4. 如何配置Hugepages
 
   根據下面的步驟來配置Hugepages,修改Hugepages需要重啟機器。  
1). 需要在/etc/security/limits.conf 中設定memlock值(單位KB),該值小於記憶體大小,
例如你的記憶體大小是64G,有可以設定以下的值: 
*   soft   memlock    60397977
*   hard   memlock    60397977
這個值大於SGA需求並沒有什麼害處。
 
如果是Exadata機器,引數要求請參考文件1284261.1

2). 重新登入root和oracle使用者,檢查memlock limit
$ ulimit -l
60397977
 
3). 如果你使用11G及以後的版本,AMM(自動記憶體管理)已經預設開啟,但是AMM與Hugepages
是不相容的(因為hugepage是共享記憶體,不適合PGA),必須先關閉AMM。

4). 確保你的全部例項都已經啟動(包括ASM) ,然後根據Document 401749.1 的hugepages_settings.sh
去評估需要設定的Hugepages的大小。 
$ ./hugepages_settings.sh
...
Recommended setting: vm.nr_hugepages = 1496

注:也可以自己計算需要的Hugepages大小,其實就是Hugepages size> all of the SGA size

5).  編輯/etc/sysctl.conf 設定 vm.nr_hugepages引數:
vm.nr_hugepages = 1496 
 
6).  停止例項並重啟OS系統
 
7).  檢查設定是否生效
 
系統重啟後,啟動全部的資料庫,透過以下命令檢查
 
# grep HugePages /proc/meminfo
HugePages_Total:    1496
HugePages_Free:      485
HugePages_Rsvd:      446
HugePages_Surp:        0
 
HugePages_Free< HugePages_Total 既說明Hugepages已經生效,同時HugePages_Rsvd不為“0”.

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

相關文章