db2数据库性能参数优化笔记整理

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

[经验分享] db2数据库性能参数优化笔记整理

数据库, 笔记, 性能, 参数, 调优

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 SQLCA,the package name,the package creator,the section number,a consistency token,th k 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依照在其它操作系统上,所有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的通信方式,存储过程为客户端请为其执行业务逻辑。unfenced模式是一种直接调用db2进程并在进程的地址空间内执行,有不安全性,但该模式可以nced模式做不到。

如果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参数控制,的)+创建的缓冲池(含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写到磁盘的激活条件:

相关文档
最新文档