`
onlyor
  • 浏览: 371040 次
  • 性别: Icon_minigender_1
  • 来自: 南京
社区版块
存档分类
最新评论

DB2 runstats、reorgchk、reorg 命令

    博客分类:
  • db2
阅读更多


    
runstats、reorgchk、reorg

 

1、runstats

runsats可以搜集表的信息,也可以搜集索引信息。作为runstats本身没有优化的功能,但是它更新了统计信息以后,可以让DB2优化器使用最新的统计信息来进行优化,这样优化的效果更好。

 

runstats   on   table   <tbschema>.<tbname>   收集表   <tbname>   的统计信息。表名必须是用   <dbschema>   全限定的。

 

 

  2、reorg

 

 A、 reorg   table   <tbschema>.<tablename>   通过重构行来消除“碎片”数据并压缩信息,对表进行重组。表名必须是用   <dbschema>   全限定的。

  B、

reorg还有一个功能就是可以将表中的数据按照某个索引关键字的顺序排列,从而可以减少某些查询I/O的数量。

 

 

  执行REORG可以考虑分为表上有索引和没有索引两种情况:

     a.如表名为DB2INST1.STAFF,索引名为DB2INST1.ISTAFF

      reorg table db2inst1.staff index db2inst1.istaff use tempspace1

    b.建议REORG时使用USE参数指定数据重排时使用的临时表空间,否则,REORG工作将会

       在表所在表空间中原地执行.如果表上有多个索引,INDEX参数值请使用最为重要的索

       引名.

    c.表上没有索引:

       reorg table db2inst1.staff use tempspace1

      reorg table sysibm.systables use tempspace1

 

http://weiruan85.javaeye.com/blog/317520

 

3、

 

让db2系统定时runstats、reorg

Q:定期runstats、reorg

A:在db2 v8.2以上可以使用 CALL SYSPROC.ADMIN_CMD来实现,

这里主要讲在v8.2以前的版本中利用shell或者批处理来实现同样的功能

因为在以前的版本中存储过程中是不能使用DDL操作语句的!(这点对于oracle刚转过来的人来说很是郁闷的)

然后可以利用db2自带的配置自动维护来做,但是java做的东西比较让人感觉头痛!尤其是速度和莫名的错误!

本代码使用操作系统的脚本来实现这部分功能!

1.windows下

如下:

下一个cmd文件s.cmd

内容如下:

db2 connect to ccp_dm

db2 -x "select 'runstats on table '||rtrim(tabschema)||'.'||tabname||' on all columns' from sysstat.tables where card=-1">tab.sql

db2 -f tab.sql

--其中where后的条件可以修改

然后就是定制任务:用windos的定制任务!每周或者每月运行,这个就不讲了哈!

这部分经测试,通过!

不过能,这里只提到了runstats,对于reorg同理也可以实现!

 

http://myfriend2010.itpub.net/post/29012/386779

 

 

4、reorgchk

 

C:\Documents and Settings\Administrator>db2 reorgchk update statistics on table all

 

正在执行 RUNSTATS ....

 

  reorgchk   on   table   all   确定是否需要对表进行重组。这对于对所有表自动执行 runstats很有用。  

 

 

1) 针对系统表进行REORGCHK

db2 reorgchk update statistics on table system

使用UPDATE STATISTICS参数指定数据库首先执行RUNSTATS命令。

 

2) 针对用户表进行REORGCHK

db2 reorgchk update statistics on table user

 

下面是执行的部分结果

db2 reorgchk update statistics on table user

执行 RUNSTATS ....

 

 

db2 reorgchk 命令是最重要的、也是经常被忽略的 DB2 调整命令之一。 db2 reorgchk 命令被忽略是因为它不是一个一次性调整项。由于更新是在 DB2 数据库上执行的,因此关于表的统计信息将不会是最新的。db2 reorgchk 命令更新 DB2 优化器所使用的重要统计信息。建议在大约每 10,000 次更新后重复 db2 reorgchk 命令。

 

在运行 db2 reorgchk 命令之前,您应该停止 IBM Directory Server 以防止在命令执行的同时发生任何 DB2 查询或更新。虽然这是可选的,但数据库查询和更新可能会非常缓慢并有可能超时。

 

 

 

请注意,运行 db2 reorgchk 命令所带来的性能益处是即时的。不必在 db2 reorgchk 命令之后重新启动 DB2。

 

除了提高性能之外,db2 reorgchk 命令还报告关于数据库中所有表和索引的统计信息。db2 reorgchk 命令还报告关于 DB2 表的组织的统计信息。

 

http://publib.boulder.ibm.com/tividd/td/ITAME/SC32-1351-00/zh_CN/HTML/am51_perftune66.htm

分享到:
评论

相关推荐

    DB2基本命令 实例管理和常用dml

    db2 reorg table ydd db2 runstats on table ydd with distribution and indexes all 13.导出表数据 db2 export to c:\dftz.txt of del select * from dftz db2 export to c:\dftz.ixf of ixf select * from ...

    关于数据库DB2 常用命令

    一个完整的REORG表的过程应该是由下面的步骤组成的: RUNSTATS -&gt; REORGCHK -&gt; REORG -&gt; RUNSTATS -&gt; BIND或REBIND 0 执行下面命令前要先连接数据库 1 RUNSTATS 由于在第二步中... REORGCHK命令的语法如下:

    DB2性能调优

    DB2性能调优 The DB2 Optimizer SQL Coding Strategies and Guidelines DB2 Catalog Filter Factors for Predicates Runstats and Reorg Utilities

    DB2调优技巧

    DB2调优技巧

    深度分析:DB2性能调优

    DB2性能调优 内容提纲 1.The DB2 Optimizer 2.SQL Coding Strategies and Guidelines 3.DB2 Catalog 4.Filter Factors for Predicates 5.Runstats and Reorg Utilities

    DB2 日常维护指南,第 3 部分

    DB2 日常维护指南,第 3 部分 摘自IBM官网 检查是否需要运行 runstats 和 reorg

    DB2最新维护手册,从豆丁买来的。

    目录 DB2维护手册 1 一、 DB2入门-数据库实例 4 二、 DB2日常维护日操作 12 1、 检查管理服务器是否启动 12 2、 检查DB2实例是否已经启动 12 3、 查看表空间状态是否正常 12 ...十一、 DB2常用命令集 28

    IBM DB2经典视频教程

    第6周 DB2性能优化:运维工具优化,包括Runstats、Reorg、Export、Import、Load、Backup/Restore等。 第7周 DB2性能优化:锁机制深入解析,包括并发、隔离级、锁概念、DB2与Oracle锁机制对比等。 第8周 DB2性能优化...

    DB2如何评估索引碎片是否是缓慢的RUNSTATS根

    索引碎片可能由正常的数据库活动导致,比如 INSERT 和 UPDATE。当索引变得高度碎片化时,会对 RUNSTATS 性能 产生重大影响。您可学习识别何时出现了这种情形,并采取更正措施。

    runstats.sql

    tom的runstats脚本,在oracle 11g测试没有问题,可以正常实现。

    DB2 SQL性能调优秘笈

    《DB2 SQL性能调优秘笈》是一本不可多得的DB2数据库性能调优秘笈,由拥有20余年DB2工作经验的资深数据库专家撰写,Amazon全五星评价畅销书。《DB2 SQL性能调优秘笈》不仅详尽阐述了100余条SQL语句优化的技巧和最佳...

    db2-技术经验总结

    1.5. DB2中的22个命令小技巧 26 1.6. DB2实现类型ORACLE的一些功能 29 1.7. 字符数据类型转换的时候需要注意的问题(原) 30 1.8. 本地谓词的使用注意(原) 31 1.9. windows/Linux或Unix下查看DB2端口号 31 1.10. 尽量...

    DB2性能调优资料,解决SQL执行慢的问题

    从网上找的一些关于DB2存储过程调优的方法和例子,希望对大家有帮助

    db2数据库入门教程(官方中文版)

    第 1章 – DB2 Express-C是什么?..........................................................................................13 1.1免费开发、部署和分发… 无限制!.............................................

    db2数据库入门官方教程(中文版)

    第 1章 – DB2 Express-C是什么?..........................................................................................13 1.1免费开发、部署和分发… 无限制!.............................................

    DB2维护手册.pdf

    2、 检查DB2实例是否已经启动 3 3、 查看表空间状态是否正常 3 4、 查看表的状态 4 5、 查看磁盘空间 4 6、 检查存储管理软件是否正常 4 7、 检查数据库备份是否正常 5 8、 检查归档日志是否正确归档了 5 9、 查看...

    Python库 | runstats-2.0.0-cp37-cp37m-win_amd64.whl

    资源分类:Python库 所属语言:Python 资源全名:runstats-2.0.0-cp37-cp37m-win_amd64.whl 资源来源:官方 安装方法:https://lanzao.blog.csdn.net/article/details/101784059

    python-runstats:一次计算统计量和回归量的Python模块

    RunStats:一站式计算统计和回归 是Apache2许可的Python模块,用于在线统计和在线回归。 统计信息和回归摘要均通过一次计算。 以前的值不会记录在摘要中。 长时间运行的系统通常会生成汇总性能的数字。 可能是响应...

    mysql 调优总结

    为什么要优化? 随着数据量的增大, mysql服务性能差从而直接影响用户体验。 查询时结果显示的很慢等。 哪些方面可以优化? 1、优化硬件、操作系统 2、优化MySQL服务器 3、优化DB设计 ...#指定MySQ

    uid-decoding

    UID解码 基于SGNMT的解码库: : ...要编译统计信息类,请导航至runstats子模块: cd runstats python setup.py install 入门 我们建议从fairseq提供的预训练模型开始。 从其NMT示例中下载任何模型,解压缩并将模型检

Global site tag (gtag.js) - Google Analytics