首頁 > 資料庫 > mysql教程 > 未开启HugePages ORACLE session剧增时引起的一次悲剧

未开启HugePages ORACLE session剧增时引起的一次悲剧

WBOY
發布: 2016-06-07 15:50:39
原創
955 人瀏覽過

故障简单描述一下:LINUX系统未开启HugePages,主机内存将近300G,SWAP是32G。ORACLE 的 SGA_MAX_SIZE设置是主机内存的将近80%,SGA_TARGET设置是主机内在的将近60%,正常情况下数据库session大约在将近500。故障当天业务有变化,session数增加了一倍,达到

故障简单描述一下:LINUX系统未开启HugePages,主机内存将近300G,SWAP是32G。ORACLE 的 SGA_MAX_SIZE设置是主机内存的将近80%,SGA_TARGET设置是主机内在的将近60%,正常情况下数据库session大约在将近500。故障当天业务有变化,session数增加了一倍,达到上1000个,内存紧张,用到了SWAP空间。

解决:找时间关数据库,重新配置HugePages,重启数据库后观察,内存消耗较少,与未开启HugePages之前是数量级对比。Hugepage可以减轻cpu的负担,还可以减少系统内存的消耗;一般情况下建议linux的数据库系统配置Hugepage(特别是内存大、SESSION多).

关于开启hugepages与关闭,参考:http://blog.csdn.net/haibusuanyun/article/details/20697371

关于LINUX 6关闭;http://blog.csdn.net/haibusuanyun/article/details/41983497

会话数600多时
[oracle@* ~]$ ps -ef|grep LOCAL| wc -l
613
[oracle@* ~]$ ps -ef|grep LOCAL| wc -l
647
[oracle@ ~]$ free -m
             total       used       free     shared    buffers     cached
Mem:        257927     255079       2847          0         64     148001
-/+ buffers/cache:     107013     150914
Swap:        31999      13738      18261
[oracle@ ~]$ cat /proc/meminfo |grep PageT
PageTables:     94353044 kB
[oracle@ ~]$ free -m
             total       used       free     shared    buffers     cached
Mem:        257927     255182       2745          0         64     147743
-/+ buffers/cache:     107373     150553
Swap:        31999      13981      18018
[oracle@ ~]$ ps -ef|grep LOCAL| wc -l
654
[oracle@~]$ cat /proc/meminfo |grep PageT
PageTables:     95038204 kB


会话数上1000时,
[oracle@ ~]$ cat /proc/meminfo |grep PageT
PageTables:     110855888 kB
[oracle@ ~]$ ps -ef|grep LOCAL| wc -l
1016


补充下配置HugePages后的使用情况

[oracle@ ~]$ cat /proc/meminfo |grep Page
PageTables:       164464 kB
[oracle@~]$ ps -ef|grep LOCAL|wc -l
429

相關標籤:
來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
最新問題
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板