入门客AI创业平台(我带你入门,你带我飞行)
博文笔记

[经验总结]解决db2 bufferpool不足的问题

创建时间:2009-04-20 投稿人: 浏览次数:11736

问题:

     对Mars服务端程序同时开10个用户用复杂的XQuery语句查询,出错。
--CLI ERROR-------------
  cliRC = -1
  line  = 806
  file  = dbapi.c

 SQLSTATE     = 57011
 Native Error Code = -1218
[IBM][CLI Driver][DB2/LINUXX8664] SQL1218N  There are no pages currently available in bufferpool "4096".  SQLSTATE=57011

 

解决思路:

      调整buffpool的大小

 

解决方法:

         1> 启动数据库
             db2inst1@mars: db2start
           启动db2命令行
             db2inst1@mars:db2


        2>  连接数据库
              db2 =>connect to test

 

         3>  修改buffer pool


             检查当前数据库已有的buffer pool
             db2=>select * from syscat.bufferpools
              结果显示系统存在默认的bufferpool   IBMDEFAULTBP, 大小为4K(1*4096),这个数值明显太小;


             直接修改IBMDEFAULTBP的大小:
               db2 =>alter bufferpool IBMDEFAULTBP immediate size 50000
               现在bufferpool的大小为200M(50000*4096) ,可以满足当前应用需求。

 

        4> 重启数据库管理程序
               db2inst1@mars: db2stop force
               db2inst1@mars: db2start

 

 

参考资料:  Beginning DB2 From Novice to Professional 第十八章

声明:该文观点仅代表作者本人,入门客AI创业平台信息发布平台仅提供信息存储空间服务,如有疑问请联系rumenke@qq.com。
  • 上一篇:没有了
  • 下一篇:没有了
未上传头像