HugePages與AMM不相容:ORA-00845: MEMORY_TARGET not supported on this system
參考文件: HugePages on Oracle Linux 64-bit (文件 ID 361468.1)
注意這裡所說的 AMM 指的是 Automatic Memory Management , 不要和 ASMM (Automatic Shared Memory Management ) 混淆了。 ASMM和HugePage是相容的。
AMM : 設定 MEMORY_TARGET / MEMORY_MAX_TARGET , 動態管理SGA和PGA,不支援 LINUX x86-64 Hugepages 。
ASMM : 在SGA 主要 buffer 中動態分配記憶體大小 。 是支援 LINUX x86-64 Hugepages的 。
如果使用了大記憶體和SGA,那麼HugePage對提高資料庫效能就非常重要。比如 資料庫SGA大小超過8G,就需要配置HugePages。那麼如果OS使用的是Linux x86-64系統,就需要先禁用AMM , 即設定 MEMORY_TARGET / MEMORY_MAX_TARGET都為 0 。預設情況下ASM instance 也是使用AMM的,但因為ASM 例項不需要大SGA,所以對ASM 例項使用HugePages意義不大。 如果使用AMM,所有的SGA 記憶體都是在/dev/shm 下分配的,在分配SGA時不會使用HugePage。這也是AMM 與HugePage不相容的原因。
---- 設定hugepage
第一步: 設定memlock
在/etc/security/limits.conf檔案中新增memlock的限制,注意該值略微小於實際物理 記憶體的大小。 比如實體記憶體是64GB,可以設定為如下:
* soft memlock 60397977
* hard memlock 60397977
如果這裡的值超過了SGA的需求,也沒有不利的影響。
The parameters will be set by default on:
Oracle Linux with oracle-validated package (See Document 437743.1) installed.
Oracle Exadata DB compute nodes
第二步: 驗證memlock
以Oracle product owner賬號登入,使用如下命令檢視引數值:
$ ulimit -l
60397977
第三步: 11g中檢視引數use_large_pages,預設值是TRUE。並確認沒有設定AMM 。
第四步: Use the script hugepages_settings.sh in Document 401749.1 to calculate the recommended value for the vm.nr_hugepages kernel parameter. e.g.:
第五步 : Edit the file /etc/sysctl.conf and set the vm.nr_hugepages parameter there:
...
vm.nr_hugepages = 1496
This will make the parameter to be set properly with each reboot.
第六步 : Stop all the database instances and reboot the server
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/35489/viewspace-1155704/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- ORA-00845 MEMORY_TARGET not supported on this system
- ORA-00845: MEMORY_TARGET not supported on this system
- startup ORA-00845: MEMORY_TARGET not supported on this system
- Oracle報錯:ORA-00845: MEMORY_TARGET not supported on this systemOracle
- ORA-00845: MEMORY_TARGET not supported on this system - Linux ServersLinuxServer
- ORA-00845: MEMORY_TARGET not supported on this system報錯解決
- Oracle11g ORA-00845: MEMORY_TARGET not supported on this systemOracle
- ORA-00845 MEMORY_TARGET not supported on this system報錯解決
- ORA-00845 MEMORY_TARGET not supported
- MEMORY_TARGET not supported on this system
- Oracle 11g報錯"ORA-00845: MEMORY_TARGET not supported on this system"Oracle
- oracle 11g報錯ORA-00845: MEMORY_TARGET not supported on this systemOracle
- “ORA-00845: MEMORY_TARGET not supported on this system”不完全解決之道
- ORA-00845: MEMORY_TARGET not supported on this system 失敗的解決方案
- Oracle11g啟動報:ORA-00845: MEMORY_TARGET not supported on this systemOracle
- MEMORY_TARGET not supported on this system for linuxLinux
- linux下/dev/shm的大小引發ORA-00845: MEMORY_TARGET not supported on this systemLinuxdev
- 解決辦法:ORA-00845: MEMORY_TARGET not supported on thi
- ORA-00845 : MEMORY_TARGET not supported on this system(調大資料庫記憶體無法啟動)大資料資料庫記憶體
- ORA-00845: MEMORY_TARGET
- Linux 11G RAC啟用HugePages與AMM的禁用Linux
- Linux下安裝Oracle11g , MEMORY_TARGET(AMM)小於/dev/shm處理(ORA-00845)LinuxOracledev
- ORA-00845 memory_target needs larger /dev/shmdev
- AMM與ASMMASM
- 0927hugepages與nr_overcommit_hugepagesMIT
- ORA-00845 When Starting Up An 11g Instance With AMM Configured
- Oracle Fusion Middleware Supported System check,jdk,java .etc requirementsOracleJDKJavaUIREM
- memory_max_target/memory_target設定過大報ORA-00845錯誤
- 【TUNE_ORACLE】Oracle資料庫與HugePages(二)HugePages配置和限制Oracle資料庫
- 【TUNE_ORACLE】Oracle資料庫與HugePages(一)HugePages概念和優勢Oracle資料庫
- Oracle 11g AMM與ASMM切換OracleASM
- 【AMM】關於ASM中AMM引數說明ASM
- 【TUNE_ORACLE】Oracle資料庫與HugePages(三)HugePages常見問題和解決辦法Oracle資料庫
- HugePages on LinuxLinux
- HugePages詳解
- Linux HugepagesLinux
- THP Transparent HugePages 相關知識與關閉
- hugepages優化記憶體原理與優點優化記憶體