我们今天主要向大家讲述的是DB2做并行LOAD操作时挂起DB2diag.log中的DIA8533C错误,前两天在相关网站看见DB2做并行LOAD操作时挂起DB2diag.log中的DIA8533C错误的资料,觉得挺好,就拿出来供大家分享。
产品:DB2 UDB ESEv
平台:HPUX 11
版本:V8
问题描述:
在HPUX操作系统上,一个物理机器上有多个逻辑分区,在做并行LOAD操作时,发现LOAD操作挂起,在db2diag.log中看到DIA8533C的错误。
解答:
在db2diag.log中看到下列错误:
- 2006-06-02-18.00.56.823018+480 I25267A383 LEVEL: Severe
- PID : 28027 TID : 1 PROC : db2lload 3
- INSTANCE: XXXX NODE : 003 DB : XXXX
- APPHDL : 0-762 APPID: O5402789.C2D8.04B862100054
- FUNCTION: DB2 UDB, database utilities, sqluAllocTBufs, probe:100
- MESSAGE : DIA8533C The system memory limit was reached.
该错误是由于操作系统的内核参数太小,导致DB2在做消息队列操作时无法正常操作引起的。只需要重新调整HPUX的内核参数,然后重新启动DB2即可解决。
在HPUX操作系统上安装DB2分区数据库,需要先调整HPUX的内核参数,确保有足够的系统资源可用。具体内核参数的调整要求参见DB2信息中心:
http://publib.boulder.ibm.com/infocenter/db2luw/v8//topic/com.ibm.db2.udb.doc/start/t0006477.htm
另外DB2提供了一个帮助调整HPUX内核参数的命令db2osconf,详细信息参见DB2信息中心:
http://publib.boulder.ibm.com/infocenter/db2luw/v8/index.jsp?topic=/com.ibm.db2.udb.doc/core/r0008113.htm
命令帮助如下:
- db2osconf -h
- Usage:
- -c # Client only
- -f # Compare to current
- -h # Help screen
- -l # List current
- -m <mem in GB> # Specify memory in GB
- -n <num CPUs> # Specify number of CPUs
- -p <perf level> # Msg Q performance level (0-3)
- -s <scale factor> # Scale factor (1- 2 )
- -t <threads> # Number of threads
注意:在分区数据库环境中,如果你在一台物理机器上有多个逻辑分区,应该适当增加db2osconf推荐的值。也可以使用-p 和 -s参数指定一个扩展指数。如在一台物理机器上有3个逻辑分区,我们可以使用如下命令获取合适的配置参数:
- db2osconf -p 3 -s 2
以上的相关内容就是对DB2做并行LOAD操作时挂起 DB2 diag.log中看到DIA8533C错误的介绍,望你能有所收获。
【编辑推荐】