关于db2pd -tcbstat命令

最近想将仓库里面的表大小进行统计下,使用 select * from sysibmadm.admintabinfo 来统计发现非常慢,这个表经常被锁,基本上是运行不出来。后面改用db2pd -d xxx -tcb 命令来取,发现该命令只能取出部分数据。但是如果将该表进行访问后,再使用db2pd -d xxx -tcb 命令就可以取出该表数据信息。目前判断db2pd -d xxx -tcb 取出的数据应该是数据库最后一次重启到当前,所有被访问过表的数据。
1.字典表有该表数据
/db2home/db2inst1#db2 "select tabname,tableid,tbspaceid     
> from syscat.tables where tabname ='CCC_576_5'"

TABNAME                               TABLEID TBSPACEID
--------------------------------------------------------------
CCC_576_5                            3698        17

  1 record(s) selected.
2.使用 db2pd -ddw -tcb |egrep "Address|3698" 查不出该表。
/db2home/db2inst1#db2pd -d dw-tcb |egrep "Address|3698"
Address            TbspaceID TableID PartID MasterTbs MasterTab TableName          SchemaNm ObjClass DataSize   LfSize     LobSize    XMLSize   
0x0A000301F3369858 13        1327    n/a    13        1327      ODS_DR_XX_2015        DW       Perm     1          0          0          0         
0x0A000301E5369858 11        6325    n/a    11        6325      DW_ENT_XX_T             DW       Perm     1          0          0          0         
0x0A0003029B065AD8 6         3698    n/a    6         3698      DIM_XXX_201               DW       Perm     6          0          0          0         
0x0A0003020E1BDDD8 15        3698    n/a    15        3698      ODS_XXXINFO_2         DW       Perm     1          0          0          0         
0x0A000301E5347ED8 9         13698   n/a    9         13698     ODS_XXXX_5               DW       Perm     131        0          0          0         
3.对CCC_576_5该表进行访问 select count(1) from CCC_576_5 。
/db2home/db2inst1#db2 "select count(1) from ccc_576_5"

1         
-----------
     709201

  1 record(s) selected.
4.再执行db2pd -d dw-tcb |egrep "Address|3698"  CCC_576_5 表信息出现

/db2home/db2inst1#db2pd -d dw -tcb |egrep "Address|3698"
Address            TbspaceID TableID PartID MasterTbs MasterTab TableName          SchemaNm ObjClass DataSize   LfSize     LobSize    XMLSize   
0x0A000301F3369858 13        1327    n/a    13        1327      ODS_DR_XX_2015 DW       Perm     1          0          0          0         
0x0A000301E5893BD8 17        3698    n/a    17        3698      CCC_576_5          DW       Perm     99         0          0          0         
0x0A000301E5369858 11        6325    n/a    11        6325      DW_XX_T             DW       Perm     1          0          0          0         
0x0A0003029B065AD8 6         3698    n/a    6         3698      DIM_XX_201         DW       Perm     6          0          0          0         
0x0A0003020E1BDDD8 15        3698    n/a    15        3698      ODS_XXX_2        DW       Perm     1          0          0          0         
0x0A000301E5347ED8 9         13698   n/a    9         13698     ODS_XXXX_5       DW       Perm     131        0          0          0
参与4

3同行回答

苏州易博创云苏州易博创云CTO苏州易博创云网络科技有限公司
回复 3# coolzq116    syscat.tables 需要通过 runstats命令之后才能更新统计信息。显示全部
回复 3# coolzq116


   syscat.tables 需要通过 runstats命令之后才能更新统计信息。收起
IT咨询服务 · 2015-04-02
浏览846
coolzq116coolzq116数据仓库工程师天玑
回复 2# 苏州易博创云     你好!我们的数据库是DB2 v9.7.0.7 你说的是syscat.tables 视图里的 lastused这个字段么?这个字段并没有更新。不能使用。显示全部
回复 2# 苏州易博创云


    你好!我们的数据库是DB2 v9.7.0.7 你说的是syscat.tables 视图里的 lastused这个字段么?这个字段并没有更新。不能使用。收起
IT分销/经销 · 2015-04-02
浏览791
苏州易博创云苏州易博创云CTO苏州易博创云网络科技有限公司
db2pd取的是内存中的数据,所以使用过的表的统计信息都可以获取,syscat.tables会记录表最后一次被访问时的统计信息。显示全部
db2pd取的是内存中的数据,所以使用过的表的统计信息都可以获取,syscat.tables会记录表最后一次被访问时的统计信息。收起
IT咨询服务 · 2015-04-01
浏览729

提问者

coolzq116
数据仓库工程师天玑

相关问题

相关资料

相关文章

问题状态

  • 发布时间:2015-04-01
  • 关注会员:1 人
  • 问题浏览:4580
  • 最近回答:2015-04-02
  • X社区推广