WEB开发网
开发学院数据库DB2 DB2 V9.7 锁事件监控 阅读

DB2 V9.7 锁事件监控

 2010-02-04 00:00:00 来源:WEB开发网   
核心提示: 锁等待事件当两个应用程序竞争资源时,第一个应用程序在资源上加锁后,DB2 V9.7 锁事件监控(4),第二个应用程序企图加锁时发现希望增加的锁与资源现有的锁不兼容,就出现锁等待,用户名称依次为 app1、app2,我们把测试表 stock 所有权限授予给 public 组,第二个应用程序挂起,为

锁等待事件

当两个应用程序竞争资源时,第一个应用程序在资源上加锁后,第二个应用程序企图加锁时发现希望增加的锁与资源现有的锁不兼容,就出现锁等待,第二个应用程序挂起。为捕获锁等待事件,MON_LOCKWAIT 不能设置为 NONE,当锁等待时间超过 MON_LW_THRESH 指定的值时则事件监视器捕获该事件。

清单 3. 创建锁等待监视器

 db2 create event monitor lockwaitevm for locking 
 write to UNFORMATTED EVENT TABLE 
 
 db2 set event monitor lockwaitevm state 1 
 
 db2 list tables for all|find /i "lockwaitevm" 
 LOCKWAITEVM DB2ADMIN T 2009-11-18-14.47.43.281002 

清单 3 代码中,我们首先创建了一个锁事件监视器,并把捕获的数据写入到非格式化事件表中。我们发现在系统除成功创建一个事件外,DB2 还在系统中创建了一张同名的表用于保存捕获数据。

我们另外打开两个命令窗口,用于模拟两个应用,用户名称依次为 app1、app2。我们把测试表 stock 所有权限授予给 public 组,以允许 app1、app2 用户修改数据。

清单 4. 创建测试表

 db2 "import from stock.exp of ixf replace_create into db2admin.stock" 
 db2 "grant all on db2admin.stock to public" 
 db2 "create index itemno on db2admin.stock(itemno)" 
 db2 "runstats on table db2admin.stock and indexes all" 

清单 5. 应用程序 1 连接

 db2 connect to test user app1 using app1 
 
 数据库连接信息 
 
数据库服务器 = DB2/NT 9.7.0 
 SQL 授权标识 = APP1 
本地数据库别名 = TEST 

上一页  1 2 3 4 5 6 7 8 9  下一页

Tags:DB 事件 监控

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接