看起来是内存不足,然后系统把数据库进程杀掉了,实例可以正常启动吗?还是在实例启动了,在连接数据库的时候出现错误。重点是检查一下实例级别和数据库级别的内存参数
db2 get dbm cfg|grep -i mem
db2 get db cfg for sjckdb|grep -i mem
您好!您这个问题极有可能是 DB2实例申请的内存超过了系统虚拟内存(memory + swap)的可分配空间造成的
首先,提供 DB2 版本信息,机器上几个实例,每个实例几个数据库,用 db2support收集 DPF 必要配置信息,db2support.zip 包含了生成的各种配置信息和性能信息,把它发上来。
命令: db2level
db2support /tmp -d sjckdb -cl 0
看了系统top信息,系统虚拟内存也就3.6G,你可以先执行以下步骤测试下,是否 bufferpool设置过大导致。
命令:
db2set DB2_OVERRIDE_BPF=1000
db2stop force
db2start
db2 connect to sjckdb
如果连接成功,记得使用管理员权限对各个bufferpool的大小进行修改
命令示例:
db2 " alter bufferpool BP_32K size 5000 automatic "
......
db2 disconnect current
db2set DB2_OVERRIDE_BPF=
db2stop force
db2start
期待你的回复,谢谢
收起