DB2性能优化与安全:压缩、runstats与连接管理

需积分: 9 1 下载量 103 浏览量 更新于2024-09-15 收藏 92KB DOC 举报
"这篇文档主要讨论了DB2数据库在性能优化和安全性方面的一些关键操作,包括表的压缩、统计信息更新以及数据库连接管理。" 在DB2中,表的压缩对于节省存储空间至关重要。问题一指出,执行`REORG`命令前需要确保表已启用压缩属性`COMPRESSYES`。在创建新表时,可以通过`CREATE TABLE`语句直接指定这个属性,如`CREATE TABLE table_name (...) COMPRESSYES;`。如果表已经创建且未指定压缩,可以使用`ALTER TABLE`命令来添加,例如`ALTER TABLE tablename COMPRESSYES;`。要检查表的压缩状态,可以查询系统表`systables`的`COMPRESSION`字段,如果值为R,则表示表可压缩。 更新表的统计信息`RUNSTATS`对于优化器生成高效的执行计划非常关键。它提供了关于数据库对象的最新状态信息。在三种特定情况下需要执行`RUNSTATS`:1) 表经过`REORG`后,2) 数据发生20%以上变化,3) 创建新索引后。`RUNSTATS`有两种执行形式:全表统计更新和抽样10%的统计更新。全表更新可能导致性能影响,特别是在大型表上。此时,推荐使用抽样更新,如`db2 "runstats on table 表 allowwriteaccess tablesamples system(10)"`,这种方式效率更高。执行`RUNSTATS`通常需要通过`CRTTELENET`工具。 在数据库连接管理上,由于ODS数据库并发连接数有限,为了释放系统资源,执行SQL后应及时断开连接。在RAPID SQL工具中,断开连接可以通过左上角的“Disconnect”按钮或者完全关闭客户端来实现。而使用`CRTTELENET`工具时,可以执行`db2 terminate`命令或直接退出终端会话来断开连接。 总结来说,这篇文档强调了DB2中的表压缩配置、统计信息维护和有效管理数据库连接的重要性,这些都是确保DB2性能安全和高效运行的关键实践。