怎么限制DB2数据库使用的内存?

[复制链接]
查看11 | 回复6 | 2010-3-1 11:04:59 | 显示全部楼层 |阅读模式
有个db2 测试库,正常情况下主机空闲内存还有6个多G,可是应用一跑程序,内存使用急剧增长,最低时空闲内存就剩下70M,把application force后马上恢复正常。不知道怎么回事?能不能限制DB2只能使用主机的固定大小内存啊
部分db cfg
Self tuning memory
(SELF_TUNING_MEM) = OFF
Size of database shared memory (4KB)(DATABASE_MEMORY) = 1048576
Database memory threshold
(DB_MEM_THRESH) = 10
Max storage for lock list (4KB)
(LOCKLIST) = 3400
Percent. of lock lists per application (MAXLOCKS) = 60
Package cache size (4KB)
(PCKCACHESZ) = 1533
Sort heap thres for shared sorts (4KB) (SHEAPTHRES_SHR) = 26964
Sort list heap (4KB)
(SORTHEAP) = 1348
Database heap (4KB)
(DBHEAP) = 2588
Catalog cache size (4KB)
(CATALOGCACHE_SZ) = 260
Log buffer size (4KB)
(LOGBUFSZ) = 2048
Utilities heap size (4KB)
(UTIL_HEAP_SZ) = 60114
Buffer pool size (pages)
(BUFFPAGE) = 1000
Max size of appl. group mem set (4KB) (APPGROUP_MEM_SZ) = 53251
Percent of mem for appl. group heap (GROUPHEAP_RATIO) = 70
Max appl. control heap size (4KB) (APP_CTL_HEAP_SZ) = 592
SQL statement heap (4KB)
(STMTHEAP) = 4096
Default application heap (4KB)
(APPLHEAPSZ) = 128
Statistics heap size (4KB)
(STAT_HEAP_SZ) = 4384
Interval for checking deadlock (ms) (DLCHKTIME) = 10000
Lock timeout (sec)
(LOCKTIMEOUT) = -1
回复

使用道具 举报

千问 | 2010-3-1 11:04:59 | 显示全部楼层
db2mtrk, db2pd -memsets, db2pd -mempools
to make sure which pool consumed so much memory.... better take the above before and during running the application, it will be easier to compare if there's only 1 difference application running between the two tests...
回复

使用道具 举报

千问 | 2010-3-1 11:04:59 | 显示全部楼层
Size of database shared memory (4KB)(DATABASE_MEMORY) = 1048576
1048576 * 4K = 4G 感觉设置太大了吧
建议设成 AUTOMATIC
可以试一下
回复

使用道具 举报

千问 | 2010-3-1 11:04:59 | 显示全部楼层
有关数据库共享内存
每个数据库有一个数据库共享内存集。数据库共享内存是在数据库被激活或者第一次被连接上的时候分配的。该内存集将在数据库处于非激活状态时释放(如果数据库先前是处于激活状态)或者最后一个连接被断开的时候释放。这种内存用于数据库级的任务,例如备份/恢复、锁定和 SQL 的执行
这个应该能解释你的数据库为什么 应用一跑就内存就占满,把 application force掉就正常.
回复

使用道具 举报

千问 | 2010-3-1 11:04:59 | 显示全部楼层
原帖由 67449514 于 2008-1-4 20:20 发表
Size of database shared memory (4KB)(DATABASE_MEMORY) = 1048576
1048576 * 4K = 4G 感觉设置太大了吧
建议设成 AUTOMATIC
可以试一下

楼上的观察仔细,赞一个




回复

使用道具 举报

千问 | 2010-3-1 11:04:59 | 显示全部楼层
force完,数据库就stop了,当然就停了,
原帖由 67449514 于 2008-1-4 20:20 发表
Size of database shared memory (4KB)(DATABASE_MEMORY) = 1048576
1048576 * 4K = 4G 感觉设置太大了吧
建议设成 AUTOMATIC
可以试一下
有道理,先尝试下。
回复

使用道具 举报

千问 | 2010-3-1 11:04:59 | 显示全部楼层
我试试,谢谢!
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行