电脑技术学习

深入了解DB2 Universal Database进程

dn001

  为什么要查看DB2进程

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

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

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

  情况2:真实的情况

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

  看看通知和诊断日志

  治理通知日志和诊断日志(db2diag.log)是系统治理员用于了解数据库活动和功能的重要工具。正常情况下它们包含DB2进程的信息,下面的例子显示了一个db2diag.log的条目:

2000-03-06-11.53.18.001160  Instance:myInst  Node:000
PID:78121(db2agent (TEST)) TID:352 
Appid:*LOCAL.payroll.000306140834
lock_manager     sqlplrq  Probe:111  Database:TEST
DIA9999E An internal return code occurred. Report the following:
"0xFFFFE10E".;