1、Application Support Layer Heap Size (ASLHEAPSZ)
它是app和agent通信的buffer,占用实例共享内存空间。
监控:
get snapshot for all on | grep –i “Rejected Block Remote Cursor requests”
Rejected Block Remote Cursor requests = 2283
如果Rejected Block Remote Cursor requests值比较高,增大ASLHEAPSZ值,直到该值为0
配置:
update dbm cfg using aslheapsz 20
2、Maximum Requester I/O Block Size (RQRIOBLK)
它是client和server通信的buffer,占用每个 agent的私有内存空间。
监控:无法监控
配置:建议设置为最大值64K,缺省32767bytes,(设到最大值不会影响其它性能)
update dbm cfg using rqrioblk 65536
3、Sort Heap Threshold (SHEAPTHRES)
私有模式排序空间最大阀值,值=并发数×SORTHEAP
监控:
需要打开sort监控开关-db2 update monitor switches using sort on
get snapshot for dbm | grep –i “sort”
如果Post threshold sorts值比较大,增加SORTHEAP 、SHEAPTHRES参数值
如果(Piped sorts accepted/Piped sorts requested)值比较低,增加SORTHEAP 、SHEAPTHRES参数值
配置:
update dbm cfg using sheapthres 80000
4、Enable Intra-Partition Parallelism (INTRA_PARALLEL)
在SMP环境中打开该选项,提高表和索引扫描速度
监控:
list applications
看application对应的Agents(# of Agents)数目是否大于1
配置:
update dbm cfg using intra_parallel yes
5、Maximum Query Degree of Parallelism (MAX_QUERYDEGREE)
指定一个SQL语句的最大subagent数目,当 INTRA_PARALLEL值为yes时该参数起作用。如果该值为 ANY (-1),那么优化器将使用服务器的最大cpu数目。
监控:
list applications
看application对应的Agents(# of Agents)数目是否大于1
配置:
update dbm cfg using MAX_QUERYDEGREE 4 IMMEDIATE
6、Query Heap Size (QUERY_HEAP_SZ)
占用agent的私有内存空间,存储每个agent运行时所有的sql文,包括the input SQLDA,the output SQLDA,the statement text,the SQLCA,the package name,the package creator,the section number,a consistency token,the cursor control block for any blocking cursors。
监控:
无法监控
配置:
一般不需要修改,如果访问大的LOB,可能需要增加该值
update dbm cfg using query_heap_sz 10000
7、Number of FCM Buffers (FCM_NUM_BUFFERS)
在multi-partitioned database(partition之间)和intra-partition parallelism enabled(subagent之间)环境中通信缓存。
在AIX上,如果DBM有充足的空间,每个partition依照FCM配置拥有独立的空间,如果不够,所有partition依照FCM配置共享空间;
在其它操作系统上,所有partition依照FCM配置共享空间;
如果DB2_FORCE_FCM_BP注册变量设置为YES,所有partition将一直共享空间,但大小将受32bit的OS限制
监控:
get snapshot for FCM for all dbpartitionnums
配置:
update dbm cfg using fcm_num_buffers 4096 immediate
8、Connection、Agent配置
监控:
db2 get snapshot for dbm | grep -i agent
High water mark for agents registered = 2
High water mark for agents waiting for a token = 0
Agents registered = 2
Agents waiting for a token = 0
Idle agents = 1
Agents assigned from pool = 146
Agents created from empty pool = 3
Agents stolen from another application = 0
High water mark for coordinating agents = 2
Max agents verflow = 0
Gateway connection pool agents stolen = 0
9、Keep Fenced Process (KEEPFENCED)
UDF和SP按照运行模式分为两种:fenced和unfenced,fenced模式是一种c/s的通信方式,存储过程为客户端请求server的一个 agent为其执行业务逻辑。unfenced模式是一种直接调用db2进程并在进程的地址空间内执行,有不安全性,但该模式可以读取运行的PID,而 fenced模式做不到。
如果KEEPFENCED设置为YES,可以使UDF或SP所调用fenced进程或线程一直保持并被重复使用,一直到实例关闭才销毁,但这将占用一定资源(如内存)。例如,使用java写的sp,sp运行完成后不会结束 JVM,下次运行sp将省去启动JVM的时间。
配置:
update dbm cfg using keepfenced YES
10、Maximum Total of Files Open (MAXFILOP)
服务器打开文件的最大数目,如果使用SMS容器,要求该值比较高,也需要检查操作系统对该值的限制。
配置:
update db cfg using maxfilop 2000
监控:(需要bufferpool的monitor:db2 update monitor switches using bufferpool on)
db2 get snapshot for db on testdb |grep -i ‘close’
11、Default Buffer Pool Size (BUFFPAGE)
调整缓冲池的大小办法:
1、alter bufferpool IBMDEFAULTBP size -1,修改所有bufferpool大小为-1,然后依赖BUFFPAGE参数控制,缓冲池的数量:4(隐藏的)+创建的缓冲池(含 IBMDEFAULTBP),每个创建的缓冲池大小=pagesize×buffpage×(1+5%)
2、直接修改bufferpool大小,建议使用该方法,可以控制pagesize大小不同缓冲池的大小。
配置:
update db cfg for using BUFFPAGE bigger_value
alter bufferpool IBMDEFAULTBP size -1
监控:
get snapshot for db on db_name
12、Log Buffer Size (LOGBUFSZ)
从logbuff写到磁盘的激活条件:
1)A transaction commits (or MINCOMMIT transactions commit). (最小提交事务数时flush)
2)The log buffer is full(日志缓冲满时flush)
3)One second has elapsed since the last log buffer flush.(间隔1秒时flush)
配置:
update database cfg for using LOGBUFSZ 256
监控:
get snapshot for database on | grep –i “Log space”
Log space available to the database (Bytes) = 4549916
Log space used by the database (Bytes) = 550084
Maximum secondary log space used (Bytes) = 0
Maximum total log space used (Bytes) = 550084
CLSA(current amount of log space available ) = Log space available to the database - Log space used by the database, CLSA就是LOGBUFSZ参数可以配置的最大值。
get snapshot for database on | grep –i “Log pages”
Log pages read = 0
Log pages written = 12644
日志页面读(Log pages read)是日志记录器(logger)从磁盘读取的日志页面的数目,而日志页面写(Log pages written)是日志记录器(logger)写入磁盘的日志页面的数目。理想状态,Log pages read为0,如果该值比较大,考虑增加LOGBUFSZ值。
13、Application Heap Size (APPLHEAPSZ)
存放agent或subagent当前sql文处理的所需内存,大小决定于sql文的复杂度及宿主变量大小。如果是分区数据库,这部分内存使用 APP_CTL_HEAP_SZ堆,而不在应用程序堆。在运行时按需要分配内存,这个值仅是上限值。
配置:
update database cfg for using applheapsz 1024
监控:
无法监控,如果应用报错,加倍该值,看应用错误是否消失
14、Sorting (SORTHEAP, SHEAPTHRES_SHR)
只有 INTRA_PARALLEL 数据库管理器配置参数是 ON 或启用集中器(concentrator)时(即当 MAX_CONNECTIONS 大于 MAX_COORDAGENTS 时),才可以使用共享排序。
对私有排序,SHEAPTHRES 在实例级是一个软限制,如果超过这个值,系统将分配很小的排序堆,性能会下降
对共享排序,SHEAPTHRES_SHR在数据库级是一个硬限制。
当并发用户为10个,sortheap为100,如果是私有排序,SHEAPTHRES =10×sortheap,如果是共享排序,SHEAPTHRES_SHR=5×sortheap
转自:
http://www.db2china.net/?viewnews-8464.html
分享到:
相关推荐
db2 数据库性能参数优化笔记整理 db2 数据库性能参数优化是 db2 数据库管理员的重要任务之一。合理地设置数据库性能参数可以显著地提高数据库的性能和效率。下面是数据库管理员需要了解的重要性能参数的配置和优化...
DB2数据库性能调整和优化(第2版)侧重于介绍DB2数据库的性能调优。性能调优是一个系统工程:全面监控分析操作系统、I/O性能、内存、应用及数据库才能快速找到问题根源;深刻理解DB2的锁及并发机制、索引原理、数据库...
《牛新庄-db2数据库性能调整优化》这本书深入探讨了DB2数据库的性能优化技术,是DB2数据库管理员和开发人员的重要参考资料。DB2作为IBM公司的一款企业级关系型数据库管理系统,广泛应用于金融、电信、制造等多个行业...
### DB2数据库性能优化小技巧详解 #### 一、Bufferpool优化 在DB2数据库中,Bufferpool(缓冲池)的设置对整个系统的性能有着重要的影响。合理的Bufferpool配置能够显著提升数据访问速度,减少I/O操作次数。下面将...
综上所述,DB2数据库性能调整和优化是一个涉及多方面知识的复杂过程,包括SQL优化、索引管理、内存配置、参数调优、物理设计、监控诊断以及备份恢复等。通过深入理解和实践这些技术,我们能够有效地提升DB2数据库...
db2数据库性能调整和优化,非常好的一本书,推荐给大家
这些信息对于DB2优化器至关重要,因为它需要这些数据来确定执行查询的最佳路径。优化器通过分析这些统计信息,能够预估各个操作的成本,从而选择资源消耗最小的执行计划。Runstats提供了两种数据分布采样方式:频率...
DB2是一款高性能、安全且可扩展的数据库系统,支持多种操作系统平台,包括Windows、Linux、Unix和IBM AIX。它提供了一整套功能,如事务处理、数据仓库、数据分析等,满足不同规模的企业对数据管理的需求。 在安装...
因此,进行DB2数据库性能分析与优化显得尤为重要。下面将详细介绍DB2数据库性能调优的方法和步骤。 #### 一、性能调优方法概览 1. **数据库运行快照**:通过捕获数据库在特定时间点的状态来评估性能。 2. **SQL...
DB2数据库系统命令与配置参数手册 本手册主要介绍了DB2数据库系统的命令和配置参数,涵盖了DB2管理服务器、实例、数据库、表、索引、视图、存储过程、触发器、函数等方面的知识点。下面将逐一详细介绍这些知识点。 ...
在数据库管理领域,性能优化是一项关键任务,特别是对于像IBM DB2 Universal Database (UDB)这样的大型企业级数据库系统。本文档深入探讨了如何使用Java示例程序PERFORMER来监控和优化DB2 UDB的性能,特别针对OLTP...
### DB2数据库性能优化 #### 引言 在DB2应用程序中实现最佳性能是一个多方面的过程。仅仅调整SQL是不够的,还需要理解内存管理、物理设计以及维护等因素如何影响性能。如果你是一名负责跨多个平台(如Linux、Unix...
需要这本书的都知道这本书的价值 这本书是高清扫描版,不是之前网上出现过的照片版
DB2 性能调优入门 了解DB2日常监控的过程 熟悉DB2常用的监控工具 能够熟练使用snapshot工具 能够熟练使用event monitor工具 能够熟练使用db2pd工具 能够使用SQL访问监控结果 能够熟练使用recovery expert工具
├ 第02周 DB2性能优化方法系统 │ │ 第2周 DB2性能优化方法系统.pdf │ │ 第二周 DB2性能优化方法系统.mp4 ├ 第03周 从监控开始 │ │ 第3周 从监控开始.pdf │ └ 第三周 从监控开始.mp4 ├ 第04周 配置参数...
在IBM z/OS环境下,DB2数据库作为企业级数据库系统的代表,其性能优化是商业伙伴和系统管理员关注的焦点。《DB2数据库设计和最高性能原则》是一篇旨在提供实用指导的文章,它不仅仅关注于DB2数据库的性能设计,还...