Oracle 诊断一例 ADDM Reports Significant Virtual Memory Paging
2015-04-07 10:48
393 查看
Oracle Database 由11.2.0.1成功升级到11.2.0.2后,运行一段时间通过EM发现有Significant Virtual Memory Paging警告。警告内容显示,大量的虚拟内在交换严重影响系统性能。因为在原来的版本里系统并未出现该警告,而且内存较大,出现这现象较为奇怪,于是开始查找原因。
通过statspack查看节点虚拟内存部分报告:
节点一:
但当我再通过VMSTAT查看磁盘IO运行情况,
长时间观察后很奇怪并未发现该问题。
从网上搜索相关信息有部分提到LINUX下可以将ORACLE数据库相关操作锁定在内存。
1、即通过将lock_sga设为TRUE实现,但是发现该参数只适合于内存手动管理机制,而目前系统是自动管理的,因此无效,而且非单点不建议采用完全手动管理,只好放弃。
2、LINUX环境下大内存页优化配置,即启用HugePage功能。大内存页的好处:
减少页表(Page Table)大小;
Huge Page内存只能锁定在物理内存中,不能被交换到交换区;
由于页表数量减少,使得CPU中TLB的命中率大大提高;
针对Huge Page的页表,在各进程之间可以共享,也降低了PageTable的大小。
具体配置资料可在网上搜索下,资料很多,配置案例也很全面。
但是异外的是,配置完成后,问题依然。
最后在官方文档中找到[ID 1322964.1],Bug#10220118,升级后存在的Bug。
小补丁,且支持滚动升级。打上之后,解决。
小记:Oracle产品本身存在大量Bug,所以在寻找问题解决办法,尤其是遇到异常情况时,官方技术支持文档显得尤为重要。
通过statspack查看节点虚拟内存部分报告:
节点一:
Virtual Memory Paging ~~~~~~~~~~~~~~~~~~~~~ KB paged out per sec: 349.8 KB paged in per sec: 2,178.2 节点二: Virtual Memory Paging ~~~~~~~~~~~~~~~~~~~~~ KB paged out per sec: 363.2 KB paged in per sec: 1,766.4
但当我再通过VMSTAT查看磁盘IO运行情况,
procs -----------memory---------- ---swap-- -----io---- --system-- -----cpu------ r b swpd free buff cache si so bi bo in cs us sy id wa st 4 0 131172 738060 734048 57365004 0 0 85 10 0 0 1 0 98 0 0 1 0 131172 738012 734048 57365012 0 0 4500 36 6138 20499 2 1 97 0 0 4 0 131172 738284 734048 57365032 0 0 5280 364 5965 19930 2 1 97 0 0 4 0 131172 738800 734048 57365032 0 0 6592 577 6805 21277 2 1 97 0 0 2 0 131172 737912 734048 57365032 0 0 5168 15 5969 20360 2 1 97 0 0 3 0 131172 738480 734048 57365032 0 0 5524 108 6161 20143 2 1 98 0 0 ……
长时间观察后很奇怪并未发现该问题。
从网上搜索相关信息有部分提到LINUX下可以将ORACLE数据库相关操作锁定在内存。
1、即通过将lock_sga设为TRUE实现,但是发现该参数只适合于内存手动管理机制,而目前系统是自动管理的,因此无效,而且非单点不建议采用完全手动管理,只好放弃。
2、LINUX环境下大内存页优化配置,即启用HugePage功能。大内存页的好处:
减少页表(Page Table)大小;
Huge Page内存只能锁定在物理内存中,不能被交换到交换区;
由于页表数量减少,使得CPU中TLB的命中率大大提高;
针对Huge Page的页表,在各进程之间可以共享,也降低了PageTable的大小。
具体配置资料可在网上搜索下,资料很多,配置案例也很全面。
但是异外的是,配置完成后,问题依然。
最后在官方文档中找到[ID 1322964.1],Bug#10220118,升级后存在的Bug。
小补丁,且支持滚动升级。打上之后,解决。
小记:Oracle产品本身存在大量Bug,所以在寻找问题解决办法,尤其是遇到异常情况时,官方技术支持文档显得尤为重要。
相关文章推荐
- ADDM Reports bug:Significant virtual memory paging was detected on the host operating system
- Oracle ADDM 自动诊断监视工具 介绍
- Oracle ADDM 自动诊断监视工具 介绍
- Extended paging tables to map guest physical memory addresses from virtual memory page tables to host physical memory addresses in a virtual machine system
- Oracle ADDM性能诊断利器及报告解读
- Oracle ADDM性能诊断利器及报告解读
- Oracle ADDM 自动诊断监视工具 介绍
- Oracle ADDM 自动诊断监视工具 介绍
- Oracle ADDM 自动诊断监视工具介绍
- Oracle ADDM 自动诊断监视工具 介绍
- ORACLE 10G ADDM诊断工具的使用
- Oracle ADDM 自动诊断监视工具 介绍
- Oracle_ADDM_自动诊断监视工具介绍
- GNU C Library 3 Virtual Memory Allocation And Paging 虚拟内存分配和页面调度——摘要
- Oracle ADDM 自动诊断监视工具 介绍
- Oracle内部错误:ORA-00600[13013][5001]故障诊断一例
- Oracle ADDM 自动诊断监视工具 介绍
- ORACLE的statistics_level的三种状态以及oracle自动诊断工具ADDM
- Oracle ADDM 自动诊断监视工具 介绍
- ORACLE 10G ADDM诊断工具的使用