设为首页 收藏本站
查看: 504|回复: 0

[经验分享] oracle 性能调优之 操作系统调优

[复制链接]
YunVN网友  发表于 2016-8-14 07:35:49 |阅读模式
  oracle 性能调优之 管理 操作系统
  
这章解释为优化数据库性能怎样调整操作系统,包括以下几部分内容:
  一是理解操作系统性能问题
二是解释操作系统问题
三是理解CPU
四是解释CPU问题
  1.1理解操作系统性能问题
  理解操作系统性能话题
  操作系统性能问题通常包括进程管理,内存管理和调度。
如果你已经调整过数据库实例仍然需要提高性能,检查你的工作
尝试减少系统时间。
  确保有足够的IO带宽,CPU计算能力,和交换空间。
别期待,然而,未来的对操作系统的调优会对应用程序性能有重要的影响。
  改变oracle数据库或者应用程序的配置比在操作系统做简单的调整在效率
上可能取得更显著的效果。
  例如:如果一个应用程序遇到过多的缓冲忙等待,然后系统调用增加。
如果你通过调整应用来减少缓存忙等,那么系统调用将会显著降低。
这小节会包含以下三小节内容:
  a.使用操作系统缓存
b.内存使用
c.使用操作系统资源管理器
  
利用操作系统缓存
   操作系统和设备控制器提供数据高速缓存和oracle数据库的缓存管理不产生直接冲突。
  然而,这些结构能够消耗资源,当提供很少的或者没有性能有点时候。
  当数据库文件被存储在Linux或者UNIX文件系统下时,这种情况尤其突出。
  默认情况,所有的数据库IO通过文件系统的告诉缓存。一些Linux和UNIX直接I/O的文件存储。
这样安排允许数据库文件在文件系统级别能够访问,而不是文件系统缓存。
  直接IO保存CPU资源,云寻文件系统高速缓存共享非数据库活动就像程序文本和共享池文件。
  =========================================
这种情况不会发生windows下,所有
的文件请求通过数据库通过文件系统的缓存。
===========================================
  
  尽管由于oracle数据库的高速缓存,操作系统缓存经常是多余的
在某些情况下,数据库不适用数据库缓存。某些情况下,利用直接
IO或者原始设备避免更坏的性能而不是利用操作系统缓存。例如:
  a、读写临时表空间
b、在非缓存模式下存储LOBs数据。
c、并行查询的次要读取数据
你想查询,但是不是所有的文件是操作系统级别的。
  1)异步IO
在同步IO情况下,当你一个请求提交给操作系统,
读进程快知道写进程被确认才能完成。才能继续处理。
  在异步IO情况下,当IO请求被提交后该进程继续处理。
当使用同步IO可能避免瓶颈。
  某些平台默认支持同步IO,另一些必须特别的配置,有些
系统在某些文件系统类型下只支持同步IO。
  2)FILESYSTEMIO_OPTIONS 初始化参数
  你能利用 FILESYSTEMIO_OPTIONS 初始化参数来启动或者关闭同步I/O
  或者直接IO文件系统上。这个参数是个平台相关的参数。
对于特地的平台都有一个,特定值。
  
  FILESYSTEMIO_OPTIONS 初始化参数
  FILESYSTEMIO_OPTIONS 参数能别设置成以下几种方式:
  ASYNCH: 启动异步IO文件系统,这对于数据传输时机没有需求
DIRECTIO:启动直接IO文件系统,忽略缓存
SETALL:启动异步和直接IO系统
NONE:在文件系统上禁用异步和直接IO
  NOKE:也可以参考平台相关的文档来了解更详细的信息。
  
  内存利用
  
  内存使用会被缓存区限制和初始化参数影响。
  高速缓存限制
UNIX高速缓存区消耗操作系统内存支援。尽管
一些版本的UNIX,UNIX缓存区可以分配大量内存。
就那天也要推荐先进的内存管理机制。典型的是做法是
自由内存页面能够被用来缓存IO。在这样的系统中。
通常操作系统报告工具来显示系统有没有空闲的内存这不会
引起问题。
  如果进程请求更多的内存,那么用来缓存IO的数据通常会被释放
来分派给进程使用。
  影响内存使用的参数


任何一个oracle数据库会话都会要求内存,这个依赖很多因素。
  通常情况下的分派因素是:
  打开光标的数目
被PL/SQL使用的内存,比如PL/SQL表
SORT_AREA_SIZE排序区大小
  在orcle数据库中,PGA_AGGREGATE_TARGET初始化参数给予一个会话更大的内存控制权。
  
使用操作系统资源管理器
  某些平台提供操作系统资源管理器。这优化访问系统资源的模式被设计用来减少峰值负载的影响
  通常实施管理策略来控制用户能访问的资源或者每个用户被限制使用多少资源。
操作系统资源管理器不同于域或者其他相似额额工具。
  域提供一个或者更多的完整而独立的环境在一个系统中。
  磁盘,CPU,内存和其他所有的资源被共享到每个域中。从其他的域不能访问这些资源。
  另外的相似的工具是单独划分一部分系统资源到不同的域,通常独立的CPU,或者内存区域。
单独的资源领域致力于只分配给处理该地区,进程不能通过边界迁移。不想域故那里,
所有的起太早元就像磁盘是被作为系统的所有部分公共使用的。
  oracle数据库运行在域管理中,在这些不完整的分区结构中就像内存分配至固定而不是动态的。
操作系统资源管理器在全局资源池中优先分配资源,通常是一个域或者整个系统。
  进程被分组,在资源池的任何地方轮流分派资源。
  
  
  
  

  
  

  

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-257587-1-1.html 上篇帖子: oracle 死锁和锁等待的区别(转载) 下篇帖子: oracle 连接(connects), 会话(sessions)和进程(pocesses)的关系
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表