细化解析:DB2 universal database进程

日期: 2008-06-18 作者:yashi 来源:TechTarget中国

  unix和linux用户经常检查运行在服务器上的进程来进行问题分析,并检查服务器上被消耗的资源。这些信息不仅对解决问题和分析资源的系统管理员有用,而且对于开发高可用性和监视db2进程以判断什么时候执行某种行为(例如数据库重新启动)或者执行必要的服务器错误恢复(failover)的错误恢复脚本都很重要。


  如果使用aix,必须使用ps -ef命令来检查进程。在solaris和hp-ux上,ps -ef只为所有的服务器端进程(例如agents、loggers、page cleaners和 prefetchers)显示db2sysc进程(主要的db2引擎进程)。如果你使用solaris或者hp-ux,能使用/usr/ucb/ps -axw命令看到这些进程。这些版本的ps命令都可以在linux上工作。


  在运行db2 universal database客户端或服务器软件的计算机上执行这个命令时,可以看到列出了多个db2进程。本文的目的是说明这些进程并解释它们是做什么的以及什么时候运行。通过阅读本文你能了解db2的每个进程,当你看到这些进程时能了解db2正在执行什么操作。


  注意:在db2中进程是怎样执行的对于windows和linux、unix环境有稍微的不同。在windows中,只有一个进程(db2sysc),在它下面每个引擎可分配单元(edu)作为一个线程执行。尽管本文讨论进程,但是在windows环境中应该认为它们是线程。在windows任务管理器中你能够看到每个实例的db2sysc进程(db2syscs.exe)。其它的windows服务/进程也可以显示,本文我们将解释它们是什么。


  警告:不要在正常的db2环境中直接干涉db2进程。在linux或unix中使用kill -9命令删除db2进程可能会引起db2的不正常的行为。如果删除进程将导致整个db2实例停止。本文中的目的是了解这些进程而不是直接维护它们。


  为什么要查看db2进程


  我们的个人经验已经显示了这些知识的价值,我们拜访的客户也向我们询问这类信息。看看下面的真实的情况,看看你自己如何检查系统上运行的db2进程来解决问题的:


  1:罕见的缓冲池页面清除


  某个运行电子商务网站并使用db2作为数据库服务器的客户报告说,在一天的多个时段数据库响应应用程序的时间很长。在这些时期数据库快照没有显示发生了什么不正常的行为。通过检查其中一个时段进程的cpu使用率,可以发现i/o清除器(db2pclnr)消耗了超过90%的cpu时间。接下来通过查看i/o清除进程触发器并适当地调整它们,我们消除了这种情况,该电子商务站点的处理能力提高了50%以上。


  2:真实的情况


  虽然拜访了某个ibm业务伙伴并执行了一些db2性能调整,但是我们仍然遇到了普通的响应时间延缓。应用程序列表命令没有显示任何在这个时候不正常的进程。在取得db2快照前,我们查看了db2服务器上运行的db2进程,发现db2rebal进程正在运行。在给dms表空间添加一个容器的时候,该进程用于执行再次数据均衡。该客户承认那一天它给一个包含40gb表的表空间添加了一个容器。当重新均衡完成后,查询的响应速度返回到正常情况。

我们一直都在努力坚持原创.......请不要一声不吭,就悄悄拿走。

我原创,你原创,我们的内容世界才会更加精彩!

【所有原创内容版权均属TechTarget,欢迎大家转发分享。但未经授权,严禁任何媒体(平面媒体、网络媒体、自媒体等)以及微信公众号复制、转载、摘编或以其他方式进行使用。】

微信公众号

TechTarget微信公众号二维码

TechTarget

官方微博

TechTarget中国官方微博二维码

TechTarget中国

电子邮件地址不会被公开。 必填项已用*标注

敬请读者发表评论,本站保留删除与本文无关和不雅评论的权力。

作者

yashi
yashi

相关推荐