注:本文只是记录所做的操作,没有仔细研究,有些描述可能不准确,有待深入研究。
环境
$ db2level
DB21085I This instance or install (instance name, where applicable: "dpf111")
uses "64" bits and DB2 code release "SQL11014" with level identifier
"0205010F".
Informational tokens are "DB2 v11.1.4.6", "s2102191900", "DYN2102191900AMD64",
and Fix Pack "6".
Product is installed at "/opt/ibm/db2/V11.1".
$ db2 "select * from TABLE (SYSPROC.DB_MEMBERS()) AS members"
MEMBER_NUMBER HOST_NAME PARTITION_NUMBER MEMBER_TYPE PORT_NUMBER SWITCH_NAME STATUS
------------- ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- ---------------- ----------- ----------- -------------------------------------------------------------------------------------------------------------------------------- ------
0 hyrax1.fyre.ibm.com 0 D 0 hyrax1.fyre.ibm.com -
1 hyrax1.fyre.ibm.com 1 D 1 hyrax1.fyre.ibm.com -
2 funkier1.fyre.ibm.com 2 D 0 funkier1.fyre.ibm.com -
3 funkier1.fyre.ibm.com 3 D 1 funkier1.fyre.ibm.com -
4 record(s) selected.
导出db2diag log
db2diag -time <timestamp> > <file name>
例如:
db2diag -time 2022-12-09-00.00.00.000000 > 1.log
该命令会把 2022-12-09-00.00.00.000000
之后的db2diag log,导出到 1.log
里面。
收集Db2 trace
由于该DPF DB横跨了2个机器,所以要找一个共享的目录,例如 /share/dpf111
,我在该目录下新建了一个目录 test1208
,下面的操作都是在该目录下完成的。
db2pd -eve -memebr all > before.pd
db2trc on -f trc.dmp -sdir /share/dpf111/test1208 -member all -t
Run some SQL statements
db2trc off -member all
db2trc fmt trc.dmp_funkier1.fyre.ibm.com trc.dmp_funkier1.fyre.ibm.com_fmt.out
db2trc fmt trc.dmp_hyrax1.fyre.ibm.com trc.dmp_hyrax1.fyre.ibm.com_fmt.out
db2trc flw -t -wc trc.dmp_funkier1.fyre.ibm.com trc.dmp_funkier1.fyre.ibm.com_flw.out
db2trc flw -t -wc trc.dmp_hyrax1.fyre.ibm.com trc.dmp_hyrax1.fyre.ibm.com_flw.out
db2pd -eve -member all > after.pd
注意:打开trace后,生成的文件很大,所以要尽快操作,然后迅速关闭trace。
注:对于 db2trc on
和 db2trc off
命令,默认只打开/关闭本节点上的trace,要加上 -member all
才会影响整个DPF DB。
最终生成文件如下:
after.pd
before.pd
trc.dmp_funkier1.fyre.ibm.com
trc.dmp_funkier1.fyre.ibm.com_flw.out
trc.dmp_funkier1.fyre.ibm.com_fmt.out
trc.dmp_hyrax1.fyre.ibm.com
trc.dmp_hyrax1.fyre.ibm.com_flw.out
trc.dmp_hyrax1.fyre.ibm.com_fmt.out
本例中,打开和关闭trace只用了几秒钟,把该目录打包压缩后,大小为160MB。