刚接触DB2的时候遇到一个统计表占用空间问题,因为数据是从syscat.tables里面读取占用的page数来换算,但是发现这个数据只有runstat后才准确(当然,我后来也知道了执行runstat可以提高执行计划的优化程度),所以每次我都要自己写脚本runstat然后再统计表的大小,今天才知道DB2(version9,不知道当时的8.2有没有这个功能,惭愧,惭愧!)有自动执行runstat的选项,只要打开就行了:
Automatic maintenance (AUTO_MAINT) = ON
Automatic database backup (AUTO_DB_BACKUP) = OFF
Automatic table maintenance (AUTO_TBL_MAINT) = ON
Automatic runstats (AUTO_RUNSTATS) = ON
Automatic statistics profiling (AUTO_STATS_PROF) = OFF
Automatic profile updates (AUTO_PROF_UPD) = OFF
Automatic reorganization (AUTO_REORG) = OFF
这里的缩进是有意义的,AUTO_MAINT 控制了所有的开关,如果它是OFF其它的开了也没有用,所以为了自动执行runstat我们需要打开它,然后再打开AUTO_RUNSTATS。其它的层次关系也类似。
当时我也遇到一个问题就是执行大批量执行runstat的时候会占用很多资源,影响数据库其它应用的响应速度,所以我总是找空闲时间跑,也是今天才知道其实可以定时的,只是这个定时只能在控制中心才能制定,目前没有CLP的命令选项。
另外还看到一点,像runstat这些算是DB2的一钟工具了,类似export,import等等英文是utility,这类工具占用的总资源在实例参数里也是可以设置的,这样数据库就能保证正常应用不受影响:
Workload impact by throttled utilities(UTIL_IMPACT_LIM) = 10
它是一个实例级的配置参数。
这个意思是所有应用程序(export,import,backup,runstat)等等只能占到总资源(应该是内存,CPU的一个综合统计)的10%.
当然,工具之间也有轻重缓急,所以还有个参数可以使用,来设定他们的优先级情况:
util_inpact_priority
Backup with util_inpact_priority 70
Runstats with util_impact_priority 50
这里仅仅是举个例子,真正使用的时候是这样的:
>>-SET UTIL_IMPACT_PRIORITY FOR--utility-id--TO--priority------><
那么utility id怎么取到呢,就需要这个命令了
list utilities
另外有个问题--util_impact_priority有什么作用呢?
1.让没有在限制模式启动的程序转入到限制模式
值为0说明在非限制模式,set新值为>0的任何值则程序则进入限制模式
2.让在限制模式启动的应用程序转入到非限制模式
设置其值为0
3.调整优先级
分享到:
相关推荐
脚本的作用是根据设定的执行时间,自动创建备份文件夹,执行db2move和db2look命令来备份数据库,接着自动压缩备份文件夹,并在压缩完毕后删除原始备份文件夹。此外,脚本还需要记录备份日志,以便于追踪备份过程中的...
1. **确认数据库是否还在使用**:使用`db2 list db directory`命令列出当前目录中的所有数据库,查看是否有目标数据库的信息。 2. **检查是否有未关闭的连接**:使用`db2 list active connections for database ...
在DB2 8.2版本中,创建索引时可以自动更新统计信息。 2. 表经过REORG操作后,应运行RUNSTATS以反映表结构的变化。 3. 当表内数据有显著变动(约10%-20%的增删改操作)时,需要运行RUNSTATS。 4. 对于分布式分区功能...
本文将深入探讨如何使用shell脚本来实现DB2数据库的自动备份,以满足每天1:01进行数据备份的需求。 首先,我们需要了解shell脚本的基本概念。Shell脚本是一种基于Bash或其他Unix/Linux shell的编程语言,它允许用户...
例如,定期备份数据库、自动更新统计信息、清理日志文件等,都可以通过设置定时任务来实现。 ### 配置步骤 配置db2定时任务主要包括以下几个步骤: 1. **创建定时任务**:使用`CALL SYSPROC.ADMIN_TASK_ADD`过程...
db2 资源 DB2+V9.ppt DB2培训文档(2).ppt DB2培训文档.ppt DB2 Load 实例大全.doc db2 导入导出.doc DB2.doc DB2_730(共128题).doc DB2+技巧.doc DB2安装手册 V0.02.doc DB2试题.doc DB2数据库用户手册(专业排版0...
1. DB2PD 工具可以跟踪事务、表空间、表统计信息、动态 SQL 和所有配置信息。 2. 该工具提供了 20 多个选项,显示关于数据库事务、表空间、表统计信息、动态 SQL、数据库配置和其他很多数据库细节的信息。 3. 单个 ...
- **解释:** 主机变量是在预编译过程中用于接收或传递数据的变量,其数量受系统资源限制。 #### 12. SQL 语句中所引用的最大主机变量数 - **限制:** 一个 SQL 语句中所引用的最大主机变量数不超过 32767。 - **解释...
例如,通过`@echo off`关闭命令输出,`@echo on`开启命令输出,以及`echo.`和`echo.`之间的命令行用于记录备份过程中的信息。 "db2_backup.bat"可能是一个辅助脚本,负责调用"db2_backup_main.bat"并传递特定的参数...
定期更新统计信息,并适时重新生成执行计划,是保持系统性能稳定的重要措施。此外,当数据库架构发生变化,如新增或删除表、索引、列等,也应重新考虑执行计划的优化。 总之,深入理解DB2执行计划的创建、分析与...
6. **断开连接**:完成备份后,使用`db2 disconnect`命令断开与数据库的连接,释放资源。 7. **清理与验证**:备份脚本可能还包括清理过期备份和验证备份完整性的步骤,以确保备份的有效性和可用性。 8. **定时...
本压缩包包含DB2数据库的安装包以及链接服务器驱动,对于理解DB2数据库的安装过程和使用至关重要。 首先,我们来详细了解DB2数据库。DB2是一款高性能、安全且可扩展的数据库系统,支持多种操作系统平台,包括...
"DB2自动备份脚本(window和linux)测试通过版本"是一个针对两种主流操作系统——Windows和Linux设计的自动化备份解决方案。 在Windows系统中,DB2备份通常通过命令行工具db2cmd或db2backup执行。脚本可能包含以下...
"Linux DB2定时自动备份"是一个关键的运维任务,它允许系统在指定时间自动执行备份操作,防止因硬件故障、软件错误或其他意外情况导致的数据丢失。下面我们将深入探讨如何设置Linux上的DB2实现每天自动备份。 首先...
运行这个脚本之后系统将会自动根据参数进行配置,会自动定时去备份数据及处理日志!数据库和日志都是一个月删除一次,本月的第一次成功完整备份后删除上一个月的数据,但日志会较数据库备份多存放一周! 运行脚本...
自动生成一个批处理文件,用于执行统计表的操作。 17. 自动生成建表(视图)语句 在服务器上:C:\sqllib\misc 自动生成建表(视图)语句,用于快速创建数据库对象。 这些命令可以帮助用户快速管理和维护 DB2 ...
它利用 DB2 的快照监控 API 来获取数据,并结合了全局以及特定分区的监控信息来提供聚合数据以及快速钻取的能力。它可以以交互模式运行,也可以在批处理模式下运行。 #### 命令选项详解 为了更好地理解 `db2top` 的...
本文将深入探讨DB2的核心功能、特性以及使用场景。 一、DB2核心功能 1. 数据存储与管理:DB2支持SQL标准,能够处理结构化数据,如表格、视图和索引。它提供了事务处理能力,确保数据的一致性和完整性。 2. 高可用...
3. **db2qgjava.jar**:此文件可能包含了DB2 Query Governor的Java实现,Query Governor是一种性能管理工具,可以限制SQL查询的资源消耗,防止单个查询影响整个系统的性能。 4. **db2policy.jar**:可能包含DB2的...
DB2是一种广泛使用的商业关系型数据库管理系统,由IBM公司...综上所述,这个资源包为DB2的使用者提供了一系列实用的技术指导,涵盖了数据库管理、性能优化、问题排查等多个方面,对于深入理解和操作DB2数据库大有裨益。