db2 tablespaces table bufferpools reorgs

时间:2021-08-20 18:16:01

通过快照查看表空间 表 缓冲池信息

db2 get snapshot for tablespaces on teps > tablespace.info
db2 get snapshot for tables on teps > tables.info
db2 get snapshot for bufferpools on teps > buffer.info
查看详细的表空间和容器信息
list tablespaces [show detail]
list tablespace containers for 2 [show detail]

db2pd -db dbname -tablespaces -bufferpools

db2top -db dbname

查看缓冲池信息
db2 "select * from syscat.bufferpools"

查看那个缓冲池被分配给那个表空间
db2 "select tbspace,bufferpoolid from syscat.tablespaces"

查看reorgs信息

db2pd -db dbname -reorg -index

判定是否需要reorg 两个选择:reorgchk和sysibmadm.snaptab管理视图
db2 reorgchk on schema db2admin
如果F1,F2,F3标记 *,则需要重组表,如果索引统计结果 F4-F8 有* 标记,则需要对索引重组
db2 提供多种方式检查监控reorg是否完成:
通过sysibmadm.snaptab 检查(打开dft_mon_table实例监控器开关
通过快照查看db2 get snapshot for tables on sample(current counter/max counter来预测完成的百分比)
通过db2pd -d sampe -reorg
通过list history reorg all for sample 获得表或索引重组信息(因为 reorg会记录日志)
判断某一张表是否需要重组,可以使用视图sysibmadm.snaptab管理视图,overflow_accesses于rows_read比例高于3%,就需要对表进行重组
db2 "select substr(tabname,1,18) as tabname,rows_read,overflow_accesses from sysibmadm.snaptab where (rows_read > 999) and ((overflow_accesses *100) / (rows_read +1) >3 )"