Linux系统参数造成的Oracle服务器停止响应

php中文网
发布: 2016-06-07 17:33:22
原创
1381人浏览过

由于rman备份到本地存储,占用大量内存做cache,当内存不够时,系统开始回收cache内存,把数据同步写入磁盘。写入磁盘过程是比rm

环境:

Oracle 11gr2 + dataguard

512GB内存 + 128核cpu + 高性能存储服务器

uname -an

Linux dbhost 2.6.18-238.el5 #1 SMP Sun Dec 19 14:22:44 EST 2010 x86_64 x86_64 x86_64 GNU/Linux

症状:

做rman备份时,系统内存急剧下降,直到系统失去响应宕机。

病因:

linux默认参数vm.min_free_kbytes 64mb,

/proc/sys/vm/min_free_kbytes

该文件表示强制Linux VM最低保留多少空闲内存(Kbytes)。

What-the-Diff
What-the-Diff

检查请求差异,自动生成更改描述

What-the-Diff 103
查看详情 What-the-Diff

当可用内存低于这个参数时,系统开始回收cache内存,以释放内存,直到可用内存大于这个值。

/proc/sys/vm/vfs_cache_pressure

该文件表示内核回收用于directory和inode cache内存的倾向;缺省值100表示内核将根据pagecache和swapcache,,把directory和inode cache保持在一个合理的百分比;降低该值低于100,将导致内核倾向于保留directory和inode cache;增加该值超过100,将导致内核倾向于回收directory和inode cache。

由于rman备份到本地存储,占用大量内存做cache,当内存不够时,系统开始回收cache内存,把数据同步写入磁盘。写入磁盘过程是比rman写入内存的速度要慢得多,rman继续申请占用cache,而系统却无法及时回收可用内存,最终可用内存为0,导致系统失去响应。

解决办法:

修改参数:最低保留内存加大至50gb,vfs_cache_pressure改到200

vm.min_free_kbytes = 52428800

vm.vfs_cache_pressure=200

经实测,rman备份时,可用内存下降到50gb附近(最低45gb),不再下降,系统运行正常。

linux

最佳 Windows 性能的顶级免费优化软件
最佳 Windows 性能的顶级免费优化软件

每个人都需要一台速度更快、更稳定的 PC。随着时间的推移,垃圾文件、旧注册表数据和不必要的后台进程会占用资源并降低性能。幸运的是,许多工具可以让 Windows 保持平稳运行。

下载
来源:php中文网
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
最新问题
开源免费商场系统广告
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号