db2重组表

时间:2013-04-16 09:20:09

标签: db2

当我改变 db2 中的表时,我必须重新组织它 所以我执行下一个查询:

Call Sysproc.admin_cmd ('reorg Table myTable');

我正在搜索适当的解决方案,以便在更改表时重新组织表,或在进行各种修改后重新组织所有模式

3 个答案:

答案 0 :(得分:5)

您可以通过查看SYSIBMADM.ADMINTABINFO来确定表格何时需要REORG

select tabschema, tabname
  from sysibmadm.admintabinfo
 where reorg_pending = 'Y' 

您可能还想查看NUM_REORG_REC_ALTERS列,因为这可能会显示由于各种ALTER TABLE语句而无法要求重组的其他表。

答案 1 :(得分:4)

重组操作类似于硬盘中的碎片整理。它释放了页面中的空白空间,最终它可以根据索引重新组织数据。根据功能,它会创建压缩字典并压缩数据。

如您所见,重组操作是一项管理任务,每次修改数据时都不需要。数据库无需重组即可运行。

为了简化这一点,DB2包含了自动备份等自主功能,但是这并没有回答你自己的问题。这只会触发需要它的表的重组。

答案 2 :(得分:0)

在db2配置中我们有:

自动重组(AUTO_REORG)=关闭

我们可以将auto_reorg设置为