分析 DB2 for Linux, UNIX, and Windows 中的锁等待情形
2008-10-07 16:16:32 来源:WEB开发网用于锁监视的 db2pd 选项
db2pd 是用于监视各种 DB2 数据库活动以及故障排除的实用程序。它是从 DB2 V8.2 开始随 DB2 引擎发布的一个独立的实用程序,其外观和功能类似于 Informix onstat 实用程序。db2pd 是从命令行以一种可选的交互模式执行的。该实用程序运行得非常快,因为它不需要获取任何锁,并且在引擎资源以外运行(这意味着它甚至能在一个挂起的引擎上工作)。通过快照监视还可以收集 db2pd 提供的很多监视器数据,但是 db2pd 和快照监视的输出格式却有很大不同。这使 DBA 可以选择更符合用户需求的监视替代方法。本文关注用于锁监视的 db2pd 选项。
下面的图展示了用于锁监视的 db2pd 选项:
图 1. 用于锁监视的 db2pd 选项
TranHdl:用于指定事务句柄,以便只监视由特定事务持有的锁。
showlocks:这个子选项将锁名称扩展成有意义的解释。对于一个行锁,该选项显示以下信息:表空间 ID、表 ID、分区 ID、页和槽。通过使用编目视图 SYSCAT.TABLES 上的一个查询,很容易将表空间 ID 和表 ID 映射到相应的表名:
清单 1. 将表空间 ID、表 ID 映射到表模式、表名
SELECT TABSCHEMA, TABNAME
FROM SYSCAT.TABLES
WHERE TBSPACEID = tbspaceid AND TABLEID = tableid
wait:如果指定 wait 子选项,则 db2pd 只显示事务当前正在等待的锁,以及对等待情形负责的锁。这个子选项大大简化了锁等待分析,因为它将输出限制为参与锁等待情形的锁。
db2pd database 和 file 选项不是特定于锁监视的,但是适用于(几乎)所有 db2pd 调用。database 选项将 db2pd 返回的监视器数据限制为某个数据库的监视器数据。而 file 选项则允许定义一个文件,以便将 db2pd 输出写到该文件。
更多精彩
赞助商链接