互联网服务Db2Db2运维管理

DB2 SQL Error: SQLCODE=-1476, SQLSTATE=40506, SQLERRMC=-964, DRIVER=3.67.27?

2019-08-28-01.46.19.144069+480 E395233260E636        LEVEL: ErrorPID     : 8940                 TID : 139961424668416 PROC : db2sysc 3INSTANCE: db2inst4             NODE : 003          ...显示全部

2019-08-28-01.46.19.144069+480 E395233260E636        LEVEL: Error
PID     : 8940                 TID : 139961424668416 PROC : db2sysc 3
INSTANCE: db2inst4             NODE : 003            DB   : AISMART2
APPHDL  : 0-48420              APPID: 10.7.123.156.45940.190827174730
AUTHID  : DB2INST4             HOSTNAME: BI-DB2
EDUID   : 487                  EDUNAME: db2agntp (AISMART2) 3
FUNCTION: DB2 UDB, data protection services, sqlpgResSpace, probe:2860
MESSAGE : ADM1823E  The active log is full and is held by application handle 
          "0-40505".  Terminate this application by COMMIT, ROLLBACK or FORCE 
          APPLICATION.
--日志配置
Log file size (4KB) (LOGFILSIZ) = 131072

Number of primary log files (LOGPRIMARY) = 200

Number of secondary log files (LOGSECOND) = 50

Changed path to log files (NEWLOGPATH) =

Path to log files = /home/db2inst4/db2inst4/NODE0000/SQL00001/LOGSTREAM0000/

收起
参与19

查看其它 4 个回答kong_fanqing的回答

kong_fanqingkong_fanqing数据库运维工程师国产数据库公司

诊断日志里已经明确给出占用日志的应用了, application handle "0-40505".  
使用DB2INST4用户,可以db2 list applications show detail  | egrep -i "exec|roll"  , 查看一下。也可以使用db2top -d  AISMART2  ,或者get snapshot for application 等,查看应用和响应的语句。
最直接的处理方式是force掉这个应用。根本的处理方法是改写应用里的sql语句,处理的数据量大的话,改成分批提交。每5万或10万行执行一次commit。
根据参数配置来看,你配置了活动日志文件大小为512M(4K*131072/1024),最大可用日志数量为250个,那么可使用的日志为 125 G ,供可用的日志量不算少。

IT咨询服务 · 2019-08-28
浏览9632

回答者

kong_fanqing
数据库运维工程师国产数据库公司

kong_fanqing 最近回答过的问题

回答状态

  • 发布时间:2019-08-28
  • 关注会员:5 人
  • 回答浏览:9632
  • X社区推广