`
loveseaside
  • 浏览: 151954 次
  • 性别: Icon_minigender_1
  • 来自: 郑州
社区版块
存档分类
最新评论

db2pd 使用

    博客分类:
  • db2
 
阅读更多

db2pd 工具

用于监控 DB2 实例和数据库的新的 DB2 UDB 工具

db2pd 提供了 20 多个选项显示关于数据库事务、表空间、表统计信息、动态 SQL、数据库配置和其他很多数据库细节的信息。单个 db2pd 命令可以检索多个领域的信息,并把结果保存到文件中。也可以在特定时期内调用该工具一定的次数,帮助您了解随着时间的变化数据库中的变动情况。该工具可用于故障检修、问题确定、数据库监控、性能调优和帮助应用程序的开发设计。本文介绍了这种新的工具,并通过例子说明如何使用它来提高生产率。


回页首

使用 db2pd 工具

使用这种强大的工具,必须具有 SYSADMIN 权限,而且在 UNIX® Linux™ 环境中必须是实例的所有者。该命令的语法和选项说明,可以在 DB2 UDB Information Center 中在线找到。查找 db2pd 命令语法最简单的办法是使用 Web 搜索引擎,比如下面使用 Google

  1. 打开 Google 搜索引擎,如图 1 所示。

    1. 使用 Google 搜索引擎搜索 DB2 命令 db2pd
  2. 搜索“db2pd”,如图 2 所示。

    2. DB2 命令 dp2pd Google 的搜索结果
  3. 打开 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 选项

db2pd 命令有 22 个选项。如果要对所有数据库分区服务器上、所有活动的本地数据库运行所有这些选项,只需要输入 db2pd everything,也可通过下表所示的范围选项限制信息的范围。


1. db2pd 范围选项

范围

范围选项

说明

实例

-inst -ins

用于实例

数据库

-database x –db x

用于特定的数据库x

数据库

-alldatabase –alldb

用于所有数据库

分区

-dbpartitionnum n –dbp n

用于特定的数据库分区服务器 n

分区

-alldbpartitionnums –alldbp

用于实例中的所有数据库分区服务器

注意,dbp2pd 选项可以在实例的范围内,也可以在数据库的范围内。如果使用数据库范围,指定的数据库必须已经激活。表 2 显示了每个 db2pd 选项、选项的说明和对应的范围。


2. db2pd 选项的范围

db2pd 选项

说明

范围

agents

返回关于代理的信息

实例

applications

返回应用程序的信息

数据库

bufferpools

返回缓冲池的信息

数据库

Catalogcache

返回目录缓冲的信息

数据库

dbcfg

返回数据库配置参数的设置

数据库

dbmcfg

返回数据库管理器配置参数的设置

实例

dynamic

返回动态 SQL 的执行信息

数据库

fcm

返回快速通信管理器的信息

实例

help

返回 db2pd 命令的帮助信息

logs

返回日志信息

数据库

locks

返回锁定信息

数据库

mempools

返回内存池的信息

两者

memsets

返回内存设置的信息

两者

osinfo

返回操作系统信息

Instance

recovery

返回恢复活动的信息

数据库

reopt

返回使用 REOPT ONCE 选项应用程序重新优化的 Cached SQL 语句的信息

数据库

reorg

返回表重组的信息

数据库

static

返回静态 SQL 和包的执行信息

数据库

sysplex

返回和所有数据库或者某个数据库的别名相关的服务器列表信息

实例

tablespace

返回表空间的信息

数据库

tcbstats

返回表和索引的信息

数据库

transactions

返回活动事务的信息

数据库

version

返回当前 DB2 版本和级别的信息

实例

更好的是,可以指定 –repeat 参数重复该命令。比方说,下面的命令每 2 秒钟显示一次 DB2 内存信息,共 5 次:

db2pd –mempools  –repeat 2 5

 

此外,通过 file= 参数还可以将特定 db2pd 命令选项的结果保存到文件中。file repeat 参数可以结合使用:

db2pd –mempools file=memp.txt –repeat 2 5

 

其中,memp.txt 保存输出结果。


回页首

监控的例子

下面这些例子说明了如何用 db2pd 工具监控您的数据库环境。

1:

如果希望了解当前 DB2 的级别和当前操作系统的信息,可以输入以下命令:

db2pd –version –osinfo



8. 监控例子 1

version 选项显示了系统上运行的当前 DB2 的版本和级别。输入 db2level 命令也可以得到同样的信息。–osinfo 选项显示 OSCPU、物理内存和虚拟内存信息。类似的 OS 信息也可以在 DB2 启动时的 db2diag.log 中找到。这个例子也说明了获得版本信息和 OS 信息是多么简单,只需要在一个 db2pd 命令中指定两个选项。

2:

如果希望了解谁给数据库加了锁,可以使用下面的命令确定这个人:

db2pd –database sample –locks –transactions –agents –file lock.txt

 

db2pd 命令的所有选项都可以使用前三个字符的缩写,只有两个除外:-mempools 和 –memsets。使用缩写形式,上面的例子可以改写为:

db2pd –db sample –loc –tra –age –fil lock.txt

 

上面的命令使用了混合范围选项。–lock/-loc 和 –transactions/-tra 是数据库范围内的选项,agents/age 是实例范围内的选项。虽然范围选项是混合的,仍然可以显示当前活动代理的锁定和事务信息。使用 –file/-fil 选项,命令的输出保存到 lock.txt 文件中。该命令的消息显示如下。


9a. 监控例子 2

要注意,–db 选项被 –agents 选项忽略了。

下图(图 9b)显示了 lock.txt 文件的部分内容。


9b. lock.txt 文件的内容

通过以下步骤很容易发现谁加了锁。

  1. 9b 中,–lock 选项生成的第一段输出表明,一个共享锁(Mode=S)被句柄号为 3TranHdl=3)的事务持有,而且锁定的状态是授权(Sts=G)。
  2. transactions 选项生成的第二部分输出表明,事务句柄号 3 具有应用程序句柄号 28AppHandl=28)。
  3. 最后,可以在输出的第三部分中发现,ID POONS 的用户拥有应用程序句柄号 28

事务在等到被锁定的资源时,–locks 在输出中的状态(Sts)将是 W,代表 Waiting(等待)状态。然后使用上面的方法很容易确定谁在等待锁定的资源。

这个例子说明,一个简单的命令可以检索必要的信息确定谁加了锁,也说明可以将多个选项的输出保存到一个文件中,还说明了选项的缩写形式。一旦熟悉了 db2pd 工具,为了更快地执行命令可以使用缩写形式减少按键的次数。但是为了清晰起见,在脚本文件中可能希望避免使用缩写形式。

3:

如果需要检查动态 SQL 语句的当前隔离级别,可以使用下面的命令:

db2pd –db sample –dynamic



10. 监控例子 3

10 中,在 Dynamic SQL Environments 部分可以找到执行中的动态 SQL 语句的当前隔离级别。该例中,散列的锚标识符 171 (AnchID=171) 具有最严格的隔离级别,Repeatable Read(可重复读,RR)。通过交叉参照 Dynamic SQL Statements,可以确定哪个具体的 SQL 语句具有 RR 隔离级别:

select * from employee

 

4:

如果希望监控表的重组(reorg)状态,在 v8.2 之前可以使用 GET SNAPSHOT FOR TABLES ON 数据库名 检查重组状态。使用 db2pd 工具,执行下面的命令就能获得重组状态:

db2pd –db sample –reorg file=reorg.txt

 

reorg.txt 文件包含以下信息:


11a. 监控开始的重组状态

11a 中,对表 STAFF 运行了一个离线的重组工具。如果稍后再执行相同的命令,结果将如图 11b 所示,状态已经从“Started”变为了“Done”。“Done”状态表明重组已经完成了。


11b. 监控结束的重组状态

5:

V8.2 之前的 DB2 UDB 版本中,可以使用命令 DB2 LIST TABLESPACES SHOW DETAIL 检查表空间的状态,现在只需要在操作系统命令提示符下输入以下命令。

db2pd -db sample –tablespace

 

12 中可以看到,SAMPLE 数据库中共有三个表:SYSCATSPACEUSERSPACE1 SYSTOOLSPACE,在 Tablespaces 节中说明表空间状态为 0x00000800


12a. 监控例子 5

可以使用 db2tbst 命令对表空间状态解码。可以发现,表空间处于“Backup in progress(备份中)”状态。结果如图 12b 所示。


12b. db2tbst 命令


回页首

结束语

DB2 UDB V8.2 新增的 db2pd 工具对于数据管理员来说是一种方便的工具。这些例子可以帮助您理解这种工具和它的潜在能力。通过试验不同的选项,可以加深理解,并用它简化您的数据库管理任务。

 

 

分享到:
评论

相关推荐

    db2pd工具使用方法

    DB2PD 工具使用方法 DB2PD 是 IBM® DB2® Universal Database™ 中的一种新的工具,用于监控和管理 DB2 数据库和实例。该工具可以跟踪事务、表空间、表统计信息、动态 SQL 和所有配置信息,对于故障检修、确定问题...

    搭建DB2 DPF(多分区) for LinuxUnix操作步骤

    安装 DB2 需要使用 db2_install 工具,并创建新的 DB2 instance 用户和组。例如: ``` /usr/sbin/groupadd /usr/sbin/groupadd db2fgrp /usr/sbin/useradd -g db2igrp -d /home/db2inst db2inst /usr/sbin/useradd ...

    FAQ数据库DB2简单使用

    - DB2提供多种工具和视图用于监控数据库性能,如db2pd、db2top等。通过分析性能指标,可以优化SQL语句、调整数据库参数或扩展硬件资源,提升系统性能。 9. **错误处理与日志管理** - 错误信息会被记录在DB2的错误...

    DB2使用手册.zip

    5. **性能监控**:使用DB2的内置工具进行性能监控,如db2pd,db2top等,以及如何调整参数优化性能。 **第二部分:数据库的SQL语法** 这部分深入探讨了在DB2中使用SQL(结构化查询语言)进行数据操作的语法。可能...

    DB2使用经验总结+DB2数据库性能优化的几个小技巧

    7. 性能监控:使用DB2的内置工具如db2top、db2pd等进行性能监控,及时发现并解决问题。 8. 硬件优化:合理配置服务器硬件,如增加内存、使用更快的硬盘等,也是提升DB2性能的重要手段。 以上内容仅是DB2使用和性能...

    db2使用经验积累.rar

    4. **性能优化**:DB2提供了各种性能监控工具,如db2top、db2pd等,用于分析查询执行计划、内存使用和I/O瓶颈。作者可能讲解了如何解读这些工具的输出,以及如何调整数据库配置参数以提升系统性能。 5. **安全与...

    DB2资料,IBM DB2

    "db2f0c90-system monitoring.pdf"可能会介绍如何监控DB2的性能和健康状况,包括使用DB2提供的监控工具如db2pd、db2top等,以及如何分析性能指标来识别和解决性能问题。 最后,"db2secc950-security.pdf"和"db2xpc...

    DB2使用经验积累--相当实用的例子

    DB2提供了丰富的监控工具,如db2top、db2pd等,用于查看数据库运行状态、性能指标和诊断问题。定期检查日志和统计信息,及时发现和解决问题。 九、高可用性与灾难恢复 通过镜像、集群、复制等技术实现高可用性。...

    Linux系统重启db2数据库命令实例详解.docx

    11. **监控SQL性能**:例如使用`db2top`命令可以实时监控数据库的性能,`db2pd`命令则提供更深入的诊断信息,如`db2pd -d CMSDB -dyn -application`用于查看应用处理详情。 在日常管理中,熟悉这些命令能有效地帮助...

    DB2 V11.1 下载

    在使用DB2过程中,理解其提供的各种工具(如db2pd、db2look、db2top等)和命令是提高工作效率的关键。 总的来说,DB2 V11.1在Linux环境中的部署和管理是一个涉及到多方面技能的过程,包括系统管理、数据库理论、SQL...

    十大DB2优化技巧

    使用`db2pd -db DBNAME -bufferpools`命令来检查缓冲池的使用情况,如命中率、缓冲区利用率等。 6. **表和索引统计信息**:保持表和索引统计信息的最新状态有助于优化查询计划。使用`db2advis`或`db2update ...

    DB2数据库性能调整和优化 牛新庄 PDF

    DB2数据库性能调整和优化...快照、db2pd、db2expln及事件监控器等则是必须熟练掌握的工具。《DB2数据库性能调整和优化(第2版)》覆盖了进行DB2数据库性能调优所需的全部知识和工具,并提供了大量的性能调优的实际案例。

    db2_查询锁方法

    #### 方法四:使用`db2pd`工具 除了以上方法之外,还可以利用 `db2pd` 工具来获取锁信息: ```bash db2pd -instdb2 -d <database> -locks ``` 这里 `<database>` 应替换为具体的数据库名。 #### 配置监控开关以...

    DB2常用命令,DB2 v8数据库基础

    14. **db2pd -db database_name -instance instance_name**:使用db2pd工具进行深度诊断,查看数据库内部状态。 在DB2 v8中,引入了新的特性,如增强的性能优化、XML支持、分区功能等。这些特性使得DB2 v8在处理...

    DB2 基础---DB2进程

    DB2提供了多种工具,如db2pd、db2top等,用于查看和分析进程的详细信息,帮助定位问题。 总结,DB2进程是其核心运行机制的关键组成部分,涉及到数据库的启动、管理、执行SQL、并发控制等多个方面。深入了解DB2进程...

    linux安装db2

    - 验证DB2是否正常运行,使用`db2pd -health`查看状态。 8. **创建数据库**: - 使用DB2控制中心或者命令行工具创建数据库,例如`db2 create database mydb`。 - 设置数据库安全策略,如权限、角色等。 9. **...

    Linux下db2常用命令总结

    - `db2pd -instance <实例名>`:查看DB2实例的状态。 2. **创建数据库** - `db2 create database <数据库名>`:创建新的数据库。 - `db2 connect to <数据库名>`:连接到指定数据库。 3. **数据库管理** - `...

    db2 数据库性能调优

    DB2 性能调优入门 了解DB2日常监控的过程 熟悉DB2常用的监控工具 能够熟练使用snapshot工具 能够熟练使用event monitor工具 能够熟练使用db2pd工具 能够使用SQL访问监控结果 能够熟练使用recovery expert工具

Global site tag (gtag.js) - Google Analytics