使用 db2pd 进行监视和故障诊断

使用 db2pd 进行监视和故障诊断因为 db2pd 工具可从 DB2® 内存集合迅速返回即时信息,所以该工具可用于故障诊断。

该工具不需要获得任何锁存器或使用任何引擎资源就可以收集信息。

因此,在 db2pd 收集信息时,有可能(并且预计)会检索到正在更改的信息;这样,数据可能不是十分准确。

如果遇到正在更改的内存指针,可使用信号处理程序来防止 db2pd 异常终止。

这可能会导致输出中出现诸如以下的消息:“正在更改的数据结构已强制终止命令”。

虽然如此,该工具对于故障诊断却非常有用。

在不锁存的情况下收集信息有两个好处:检索速度更快并且不会争用引擎资源。

如果要在出现特定 SQLCODE、ZRC 代码或 ECF 代码时捕获关于数据库管理系统的信息,那么可以使用 db2pdcfg -catch 命令完成此操作。

捕获到错误时,将启动 db2cos(调出脚本)。

db2cos 文件可以自动改变,以便运行解决问题所需的任何 db2pd 命令、操作系统命令或任何其他命令。

在 UNIX® 和Linux™ 上,模板文件 db2cos 位于 sqllib/bin 中。

在 Windows® 操作系统上,db2cos 位于 $DB2PATH in 目录中。

以下是使用 db2pd 快速故障诊断的一组示例。

场景 1:诊断锁定等待使用 db2pd -db <database name> -locks -transactions -applications -dynamic 命令来获取下列结果:锁定:Address TranHdl Lockname Type Mode Sts Owner Dur HldCnt Att ReleaseFlg0x07800000202E5238 3 00020002000000040000000052 Row ..X G 3 1 0 0x00000x400000000x07800000202E4668 2 00020002000000040000000052 Row ..X W* 2 1 0 0x00000x40000000对于使用 -db 数据库名称选项指定的数据库,开头的结果会显示该数据库的锁定。

您会发现 TranHdl 2 正在等待 TranHdl 3 挂起的锁定。

事务:Address AppHandl [nod-index] TranHdl Locks StateTflag Tflag2 Firstlsn Lastlsn LogSpace SpaceReserved TID AxRegCnt GXID0x0780000020251B80 11 [000-00011] 2 4 READ 0x00000000 0x000000000x000000000000 0x000000000000 0 0 0x0000000000B7 1 00x0780000020252900 12 [000-00012] 3 4 WRITE 0x00000000 0x000000000x000000FA000C 0x000000FA000C 113 154 0x0000000000B8 1 0您会发现 TranHdl 2 与 AppHandl 11 相关联,而 TranHdl 3 与 AppHandl 12 相关联。

应用程序:Address AppHandl [nod-index] NumAgents CoorPid Status C-AnchID C-StmtUID L-AnchID L-StmtUID Appid0x07800000006879E0 12 [000-00012] 1 1073336 UOW-Waiting 0 0 17 1 *LOCAL.burford.0603032256020x0780000000685E80 11 [000-00011] 1 1040570 UOW-Executing17 1 94 1 *LOCAL.burford.060303225601您会发现 AppHandl 12 最后运行动态语句 17, 1。

ApplHandl 11 是当前正在运行的动态语句17, 1,而最后运行的语句是 94, 1。

动态 SQL 语句:Address AnchID StmtUID NumEnv NumVar NumRef NumExe Text0x07800000209FD800 17 1 1 1 2 2 update pdtest set c1 = 50x07800000209FCCC0 94 1 1 1 2 2 set lock mode to wait 1您会发现,文本列显示与锁定超时相关联的 SQL 语句。

场景 2:使用 -wlocks 选项捕获所有正在等待的锁定在下面的样本输出中,应用程序 1(AppHandl 47)正在执行插入操作,而应用程序 2(AppHandl 46)正在选择该表。

venus@boson:/home/venus =>db2pd -wlocks -db pdtest数据库分区 0 -- 数据库 PDTEST -- 活动 -- 正常运行 0 天 00:01:22正在等待的锁定:AppHandl [nod-index] TranHdl Lockname Type Mode Conv Sts CoorEDU AppName AuthID AppID47 [000-00047] 8 00020004000000000840000652Row ..X G 5160 db2bp VENUS *LOCAL.venus.0712********46 [000-00046] 2 00020004000000000840000652Row .NS W 5913 db2bp VENUS *LOCAL.venus.0712********场景 3:使用 -apinfo 选项捕获关于锁定所有者和锁定等待者的详细运行时信息下面的样本输出是在与上面的场景 2 相同的条件下捕获的。

venus@boson:/home/venus =>db2pd -apinfo 47 -db pdtest数据库分区 0 -- 数据库 PDTEST -- 活动 -- 正常运行 0 天 00:01:30应用程序:地址: 0x0780000001676480AppHandl [nod-index]: 47 [000-00047]应用程序 PID : 876558应用程序节点名: bosonIP 地址:不适用连接开始时间: (1197063450)Fri Dec 7 16:37:30 2007客户机用户标识: venus系统授权标识: VENUS协调程序 EDU 标识: 5160协调程序分区: 0代理程序数: 1锁定超时值: 4294967294 秒锁定升级:否工作负载标识: 1工作负载出现标识: 2可信上下文:不适用连接信任类型:不可信继承的角色:不适用应用程序状态: UOW 正在等待应用程序名称: db2bp应用程序标识: *LOCAL.venus.0712********当前 UOW 的不活动语句列表:UOW 标识: 2活动标识: 1程序包模式: NULLID程序包名称: SQLC2G13程序包版本:节号: 203SQL 类型:动态隔离: CS语句类型: DML 以及 Insert/Update/Delete语句: insert into pdtest values 99venus@boson:/home/venus =>db2pd -apinfo 46 -db pdtest数据库分区 0 -- 数据库 PDTEST -- 活动 -- 正常运行 0 天 00:01:39应用程序:地址: 0x0780000000D77A60AppHandl [nod-index]: 46 [000-00046]应用程序 PID: 881102应用程序节点名: bosonIP 地址:不适用连接开始时间: (1197063418)Fri Dec 7 16:36:58 2007客户机用户标识: venus系统授权标识: VENUS协调程序 EDU 标识: 5913协调程序分区: 0代理程序数: 1锁定超时值: 4294967294 秒锁定升级:否工作负载标识: 1工作负载出现标识: 1可信上下文:不适用连接信任类型:不可信继承的角色:不适用应用程序状态:锁定等待应用程序名称: db2bp应用程序标识: *LOCAL.venus.0712********活动语句列表:*UOW 标识: 3活动标识: 1程序包模式: NULLID程序包名称: SQLC2G13程序包版本:节号: 201SQL 类型:动态隔离: CS语句类型: DML 和 Select(可阻塞)语句: select * from pdtest场景 4:在考虑锁定问题时使用调出脚本查找 db2cos 输出文件。

该文件的位置由数据库管理器配置参数 DIAGPATH 控制。

输出文件的内容将随您在 db2cos 文件中输入的命令不同而不同。

当 db2cos 文件包含 db2pd -db sample -locks 命令时,提供的输出示例如下所示:捕获到锁定超时Thu Feb 17 01:40:04 EST 2006实例 DB2 数据库:SAMPLE分区号:0PID:940TID:2136函数:sqlplnfd组件:锁管理器探测点:999时间戳记:2006-02-17-01.40.04.106000AppID:*LOCAL.DB2...AppHdl:...数据库分区 0 -- 数据库 SAMPLE -- 活动 -- 正常运行 0 天 00:06:53锁定:Address TranHdl Lockname Type Mode Sts Owner Dur HldCnt Att Rlse0x402C6B30 3 00020003000000040000000052 Row ..X W* 3 1 0 0 0x40仅查找“W*”,因为这是经历超时的锁定。

当锁定转换为更高级的方式时,也会发生锁定超时。

在这种情况下,您只会在输出中见到“C*”,而不会见到“W*”。

但是,在此特定情况下发生了锁定等待。

可使用db2cos 文件中的其他db2pd 命令提供的输出将结果映射至事务、应用程序、代理程序甚至是 SQL 语句。

可以缩小输出范围或使用其他命令来收集需要的信息。

例如,可以更改 db2pd 命令选项以使用 -locks wait 选项,后一个选项仅打印具有等待状态的锁定。

如果需要 -app 和 -agent 选项,也可以输入它们。

合集下载

db2解决死锁的方法

db2解决死锁的方法

db2解决死锁的方法DB2是一种常见的关系型数据库管理系统,它被广泛应用于企业级应用程序中。

然而,随着应用程序的复杂性增加和并发访问的增加,死锁问题也变得越来越常见。

在本文中,我们将探讨一些使用DB2解决死锁问题的方法。

1. 死锁的定义和原因死锁是指两个或多个事务彼此等待对方持有的资源,从而导致所有事务无法继续执行的状态。

死锁通常发生在并发访问数据库时,其中一个事务正在使用某个资源,而另一个事务需要访问相同的资源。

死锁的发生原因可以归结为四个条件:互斥(资源只能被一个事务使用)、持有并等待(一个事务持有资源并等待另一个事务的资源)、不可剥夺(资源不能被其他事务抢占)、循环等待(多个事务形成循环等待资源)。

2. 使用锁机制避免死锁在DB2中,可以使用锁机制来避免死锁的发生。

锁是一种机制,用于协调并发事务对共享资源的访问。

DB2提供了两种类型的锁:共享锁和排他锁。

共享锁允许多个事务同时读取资源,但不允许写入资源;排他锁只允许一个事务同时读取或写入资源。

为了避免死锁,可以采取以下策略:- 在事务开始时,尽量将锁的范围缩小到最小,只锁定必要的资源。

- 在事务执行期间,尽量减少锁的持有时间,执行完操作后尽快释放锁。

- 避免循环等待,即事务在请求资源时按照统一的顺序进行,避免形成死锁的循环等待。

3. 设置适当的隔离级别DB2提供了多种隔离级别,用于控制事务之间的相互影响。

不同的隔离级别对并发访问的控制程度不同。

在选择隔离级别时,需要权衡事务的一致性和性能。

在避免死锁的角度考虑,可以选择较低的隔离级别,如读取已提交(Read Committed)。

较低的隔离级别可以减少锁的竞争,从而降低死锁的风险。

但同时,较低的隔离级别也可能导致数据不一致的问题,需要根据具体业务需求进行权衡。

4. 监控和诊断死锁DB2提供了一些工具和功能,用于监控和诊断死锁问题。

可以通过以下方式来实现:- 使用DB2的系统监控工具,如db2pd命令和db2top工具,可以实时查看数据库的锁和死锁情况。

DB2故障处理的解决办法

DB2故障处理的解决办法

解决问题的关键在于分清问题的种类,并清楚每种问题的解决办法。

另外很多的数据库的问题都是由于错误的操作,错误的配置引起的,所以本文在解释怎么样处理问题时也会给出一些好的建议,来避免产生问题。

本文重点介绍实用的方法。

对问题的分类有很多种方法,在本文中我我采用了两种分类方案。

第一种方案是是否有错误码。

即发生错误时是否同时返回了错误码,错误码既包括执行命令的返回码,也包扩应用程序的返回码。

有返回码的错误解决方案是,在db2 CLP中运行db2?SQLXXXX,然后根据对该问题的解释采取相应的解决方案。

对没有错误码的问题,如数据库hang,CPU使用率过高等问题,解决问题的经验将非常重要,在本文中会有详细的说明。

根据错误码解决问题举例(在下文中,再出现需要用这种方法解决问题时将不再重复):如在连接数据库时发生错误db2 connect to sampleSQL0332N There is no available conversion for the source codepage"1386" tothe target code page "819". Reason Code "1". SQLSTATE=57017错误码分为返回码(SQL0332N)和原因码(Reason Code "1"),针对不同的原因码有不同的解决方案运行db2 ? sql0332从输出种可以看到对于reason code 1的解释是……1 source and target code page combination is not supported bythedatabase manager.……所以可以通过设置代码页来解决这个问题db2set db2codepage=1386db2 terminatedb2 connect to sample就可以成功连接了。

db2 实践+性能调优和问题诊断最佳实践+第+2+部分

db2 实践+性能调优和问题诊断最佳实践+第+2+部分

developerWorks 中国 > Information Management >DB2 最佳实践: 性能调优和问题诊断最佳实践,第 2 部分有条不紊地进行性能调优和故障诊断级别:初级developerWorks 中国网站编辑团队, 编辑, IBM2009 年 3 月 12 日本系列介绍了 DB2 系统性能的最优方法,分两部分。

第 1 部分首先介绍为了达到良好性能,我们如何从软硬件配置方面来保障,紧接着讨论了在多种在操作和故障诊断的情况下,有助于我们了解系统性能的监控方法。

第 2 部分我们介绍在出现性能问题时如何逐步地、有条不紊地去处理它们。

概述就算是配置最仔细的系统也终究会发现它仍然需要一定的性能调优,并且这时我们已经搜集了的运行监控数据,将来非常便于搜集。

保持一种系统的方法来调优和进行故障诊断对我们非常重要。

当发生了一个问题,为了解决这个问题,很容易随意的进行调整。

然而,当我们这么做了,事实上定位到问题的可能性非常低,甚至让问题更糟糕。

性能调优的一些基本原则:1.有备而来,去了解系统一切正常的情况下性能怎么样。

搜集运行监视信息来跟踪一段时间内系统行为的变化。

2.了解整个场景,不要局限于你从 DB2 上看到的 – 也要搜集并分析来自于操作系统、存储、应用程序甚至来自用户的数据。

了解系统本身将有助于你解释监控数据。

3.只调整能解释你看到的症状的参数,如果连发动机都无法启动就不要更换轮胎。

不要试图通过降低 CPU 来解决磁盘的瓶颈。

4.一次只改一个参数,在更改其它参数之前先观察效果。

你可能遇到的问题类型性能问题往往分为两大类:影响了整个系统的问题和只影响了部分系统的问题。

比如某一特定应用或 SQL 语句,在研究的过程中-种类型的问题可能转化为另外一种类型的问题,或者相反。

例如造成整个系统性能降低可能是一个单独的语句,或者是整个系统的问题只是在一个特定的区域被发现。

下面我们从整个系统的问题开始。

db2pd命令捕获死锁信息

db2pd命令捕获死锁信息

本文通过一个实例讲解了在DB2版本9以后,如何使用db2pd命令捕获死锁信息死锁经常会存在于我们的应用系统中,如何捕获死锁信息并解决死锁问题,是一个比较复杂的问题。

DB2提供了死锁事件监控器来获取死锁信息,可以非常方便地获取死锁信息。

从DB2版本8.2.2开始,DB2也可以使用db2pd命令和db2cos脚本来获取死锁信息,提供了一种新的途径来获取死锁信息。

从DB2版本9开始,我们可以使用db2pd -catch 命令来捕获错误信息,然后调用一个sqllib/db2cos 的脚本收集出错时的现场信息。

该命令的使用语法如下:Usage:-catch clear | status | <errorCode> [<action>] [count=<count>]Sets catchFlag to catch error or warning.Error Codes:<sqlCode>[,<reasonCode>] / sqlcode=<sqlCode>[,<reasonCode>]ZRC (hex or integer)ECF (hex or integer)"deadlock" or "locktimeout"Actions:[db2cos] (default) Run sqllib/db2cos callout script[lockname=<lockname>] Lockname for catching specific lock(lockname=000200030000001F0000000052)[locktype=<locktype>] Locktype for catching specific lock(locktype=R or locktype=52)下面我们通过一个实例来讲解如何使用db2pd -catch命令获取死锁信息。

DB2监控总结

DB2监控总结
列出当前连接的数据库db2listapplications:
列出所有对数据库的连接。
针对连接数达到最大,可以用命令db2 get snapshot for dbm 查看High water mark for agents registered此项的数字,
db2 list application show detail查看连接
db2 get snapshot for all on labdb >snap.out //扑捉所有快照
捕获单个快照的监控数据
Db2 get snapshot for dynamic sql on table> snap.out
grep -n "Number of executions" snap.out | grep -v "= 0" | sort -k 5,5rn | more
SELECT * FROM TABLE( SNAPSHOT_CONTAINER( 'SAMPLE', -1 )) as SNAPSHOT_CONTAINER
--To capture a snapshot of the ranges for a table space map:
--Buffer pool: To capture a snapshot of buffer pool information:
SELECT * FROM TABLE( SNAPSHOT_BP( 'SAMPLE', -1 )) as SNAPSHOT_BP
--Table space:To capture a snapshot of table space information:

DB2 最佳实践-性能调优和问题诊断最佳实践

DB2 最佳实践-性能调优和问题诊断最佳实践

DB2 最佳实践: 性能调优和问题诊断最佳实践,第1 部分性能调优从配置和监控开始2009 年 3 月12 日本系列介绍了DB2 系统性能的最优方法,分两部分。

第一部分首先介绍为了达到良好性能,我们如何从软硬件配置方面来保障,紧接着讨论了在多种在操作和故障诊断的情况下,有助于我们了解系统性能的监控方法。

第 2 部分我们介绍在出现性能问题时如何逐步地、有条不紊地去处理它们。

内容提要大多数DB2 系统都经过了性能的演变。

首先,不论出于硬件还是软件的观点,该系统首先要能被配置。

在多数情况下,这将成为系统在实施后如何运行的基础。

其次,系统一经发布,勤勉的数据库管理员(DBA)将监控系统的性能,来监测任何可能的开发问题。

如果发现任何问题,我们就进入下一个阶段- 故障诊断阶段。

每个阶段都是基于上一阶段,如果没有适当的准备,我们极有可能需要处理比较困难的问题。

本文介绍了DB2 系统性能的最优方法。

我首先涉及到一些有助于我们确保良好软硬件性能的重要原则。

然后我们讨论多种在操作和故障诊断的情况下,有助于我们了解系统性能的监控方法。

最后,尽管我们做了最好的准备,性能问题仍然可以降临到我们身上,我们讨论如何逐步地处理它们,并有条不紊的进行。

回页首简介任何形式的性能问题都将严重影响并降低一个系统对你组织的价值、削弱业务能力、服务中断、以及增加管理开销。

所有这些都会提升总的拥有成本。

缺乏对系统配置的基本原则,监视和性能故障诊断可能导致不同程度的性能低下,并且降低对于组织的价值。

因此,在前期花些时间去考虑基本的配置指导方针和建立健全的系统监控这样的做法,将使你对处理许多可能出现的典型性能问题,有充分的准备。

并使数据服务器得以高性能运行,以提高投资回报率。

回页首第一步:从配置上实现性能良好像InfoSphere 平衡的仓库(BW)这类的DB2 部署类型,或者那些在SAP 系统之内的系统,配置都是高度确定的。

在BW 案例中,像CPU 个数、内存对 CPU 的比率、硬盘的个数和配置这样的硬件因素,以及在预先指定版本的基础上,详尽的测试,以确定最优配置。

Lab 1-4 db2pd对锁的监控

db2pd对锁的监控(30分钟)目的:掌握db2pd对于锁信息监控的使用技巧1.打开3个db2cmd窗口,并分别连接到sample数据库2.在第一个窗口中输入3.在第二个窗口中输入此时,这条命令会等待。

下面我们用db2pd来分析这种等待的情况。

4.在第三个窗口中输入db2pd -db sample -locks wait showlocksdb2pd报告了有两个交易(TranHdl: Transaction Handler)产生了锁等待,其中一个交易(TranHdl=6)的锁状态(Mode)为G,表示该锁已被授予(Granted),另外一个交易(TranHdl=2)的锁为等待(W, Waiting)。

5.为了查出在那张表上产生了锁等待,我们在第三个窗口中输入db2 "SELECT TABSCHEMA, TABNAME FROM SYSCAT.TABLES WHERE TBSPACEID = 2 AND TABLEID = 6"由此,我们查出在EMPLOYEE这张表上产生了锁等待。

由此,我们完成了从事务到应用的对应,我们发现事务2,6分别属于应用30, 34,而且这两个应用都处于Write的状态。

因此,我们确定是写操作产生了锁等待。

7.我们需要近一步查出产生锁等待的应用程序的程序名,我们在第三个窗口中输入db2pd -agents由此,我们也找出了是哪两个客户端进程(Process ID)产生了锁等待。

8.能否近一步看出是什么样的SQL语句产生了锁?首先通过以下语句获得应用程序的更多信息,其中L-Anch ID表示上次执行的SQL,C-Anch ID表示当前执行的SQL:db2pd -db sample -applications9.得到上述信息后,我们再通过下述语句,就可以找出产生锁等待的SQL语句了db2pd -db sample -dynamic结果如下图所示:。

使用 db2pd 进行监视和故障诊断

使用 db2pd 进行监视和故障诊断因为 db2pd 工具可从 DB2® 内存集合迅速返回即时信息,所以该工具可用于故障诊断。

该工具不需要获得任何锁存器或使用任何引擎资源就可以收集信息。

因此,在 db2pd 收集信息时,有可能(并且预计)会检索到正在更改的信息;这样,数据可能不是十分准确。

如果遇到正在更改的内存指针,可使用信号处理程序来防止 db2pd 异常终止。

这可能会导致输出中出现诸如以下的消息:“正在更改的数据结构已强制终止命令”。

虽然如此,该工具对于故障诊断却非常有用。

在不锁存的情况下收集信息有两个好处:检索速度更快并且不会争用引擎资源。

如果要在出现特定 SQLCODE、ZRC 代码或 ECF 代码时捕获关于数据库管理系统的信息,那么可以使用 db2pdcfg -catch 命令完成此操作。

捕获到错误时,将启动 db2cos(调出脚本)。

db2cos 文件可以自动改变,以便运行解决问题所需的任何 db2pd 命令、操作系统命令或任何其他命令。

在 UNIX® 和Linux™ 上,模板文件 db2cos 位于 sqllib/bin 中。

在 Windows® 操作系统上,db2cos 位于 $DB2PATH in 目录中。

以下是使用 db2pd 快速故障诊断的一组示例。

场景 1:诊断锁定等待使用 db2pd -db <database name> -locks -transactions -applications -dynamic 命令来获取下列结果:锁定:Address TranHdl Lockname Type Mode Sts Owner Dur HldCnt Att ReleaseFlg0x07800000202E5238 3 00020002000000040000000052 Row ..X G 3 1 0 0x00000x400000000x07800000202E4668 2 00020002000000040000000052 Row ..X W* 2 1 0 0x00000x40000000对于使用 -db 数据库名称选项指定的数据库,开头的结果会显示该数据库的锁定。

关于DB2数据库问题故障分析

DB20000I The SQL command completed successfully.
----创建用户临时表空间
db2 "create USER temporary tablespace ORCLSP_USER_TMP pagesize 8k managed by system using ('/home/db2inst1/temp')"
----创建BUFFER
db2 "create bufferpool ker pagesize 8k '/home/db2inst1/' "
DB20000I The SQL command completed successfully.
-----创建系统临时表空间并指定BUFFER
db2 "create system temporary tablespace temp pagesize 8k bufferpool zy"
------断点恢复
1、首先备份sample1数据库,查看归档日志的路径,看看最后归档的时间。(一般最后最后归档的时间的那个是坏的,前一个因该可以用例2011-06-08-01.21.25.000000。)
2、将sample1数据库的活动日志文件拷贝到一个新的目录下(例/home/db2inst1/archivelogs/db2inst1/ORCL)。
[db2inst1@localhost $]$ db2move orcl import -u db2inst1 -p db2inst1 >db2moveout.log
说明:实施数据迁移的前提是1、某个非关键业务的表发生错误,导致数据库不能正常操作。
2、凭个人经验"-901"一般是除坏表外其它表数据能导出来,可实现迁移。而"-1224",数据库损坏严重,一般导到坏表时,数据库就自动断开连接了,其它表基本上导不出来,不能进行迁移。

db2pd简介及使用方法

1.打开 db2pd – Monitor and Troubleshoot DB Command,如图 3 所示。

图 3. DB2 Information Center 中关于 db2pd 工具的信息调用 db2pd 工具有两种方式。

可以用交互模式调用 db2pd 工具,或者直接在操作系统命令提示符下运行。

要是用交互模式执行该工具,可以在操作系统命令提示符下输入 db2pd –interactive 或者直接输入 db2pd,这样将看到 db2pd 命令提示符db2pd>,可以输入命令选项。

使用–help 选项可以获得帮助信息。

退出 db2pd 命令提示符只需要输入 quit 或者 q。

图 4 中的例子说明了如何使用交互模式显示当前的代理。

图 4. 用交互模式调用 db2pd在操作系统命令提示符下调用该工具可以输入带有命令选项的 db2pd 命令。

下面的例子(图 5)使用 -agents 选项显示了所有的活动代理。

图 5. 在操作系统命令提示符下调用 db2pd此外,还可以通过将选项保存在文件中或者在 DB2PDOPT 环境变量中设置选项来控制该命令。

下面的例子(图 6)说明可以将 -agents 选项保存在一个(在该例中)名叫file.out的文件中,然后使用 db2pd –command file.out 执行选项。

图 6. 将 db2pd 选项保存在文件中如果要使用 DB2PDOPT 环境变量,可以将 DB2PDOPT 设成需要的选项然后像下面这样调用 db2pd:图 7. 在 DB2PDOPT 环境变量中设置 db2pd 选项更好的是,可以指定–repeat 参数重复该命令。

比方说,下面的命令每 2 秒钟显示一次 DB2 内存信息,共 5 次:db2pd –mempools –repeat 2 5此外,通过 file= 参数还可以将特定 db2pd 命令选项的结果保存到文件中。

file 和 repeat 参数可以结合使用:回页首监控的例子下面这些例子说明了如何用 db2pd 工具监控您的数据库环境。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
相关文档
最新文档