DB2 The transaction log for the database is full. SQLSTATE=57011

正在用的数据库出现这个错误,现在按照已知的调整方面对数据库参数做了修改后可以正常使用,现在记录下这些修改。


COM.ibm.db2.jdbc.DB2Exception: [IBM][CLI Driver][DB2/LINUXX8664] SQL0964C The transaction log for the database is full.

这个错误还是第一次遇到,于是记录了解决方法:

解决步骤:

先将事务显式终止:使用commit或rollback命令
db2 rollback
DB20000I  SQL 命令成功完成。
查找当前的日志信息:
db2 get db cfg for ceshi
………………
日志文件大小(4KB)      
(LOGFILSIZ) = 1024         ***************************需要修改
主日志文件的数目                         
(LOGPRIMARY) = 13           ***************************需要修改
辅助日志文件的数目                        
(LOGSECOND) = 4            ***************************(是否要修改根据具体情况而定)
………………
修改相关的参数:
db2 update db cfg for ceshi using LOGFILSIZ 2048
DB20000I  UPDATE DATABASE CONFIGURATION 命令成功完成。

SQL1363W  为立即修改而提交的一个或多个参数未动态更改。对于这些配置参数,必须在所
有应用程序都与此数据库断开连接之后,更改才会生效。
db2 update db cfg for ceshi using LOGPRIMARY 20
DB20000I  UPDATE DATABASE CONFIGURATION 命令成功完成。

SQL1363W  为立即修改而提交的一个或多个参数未动态更改。对于这些配置参数,必须在所
有应用程序都与此数据库断开连接之后,更改才会生效。

db2stop force
2007-09-14 14:38:41     0   0   SQL1064N  DB2STOP 处理成功。
SQL1064N  DB2STOP 处理成功。

db2start
2007-09-14 14:38:45     0   0   SQL1063N  DB2START 处理成功。
SQL1063N  DB2START 处理成功。

db2 "delete from aa where  aa_num='2'"

DB21034E  该命令被当作 SQL
语句来处理,因为它不是有效的“命令行处理器”命令。在 SQL 处理期间,它返回:
SQL0964C  数据库的事务日志已满。  SQLSTATE=57011

db2 update db cfg for ceshi using LOGSECOND 5
DB20000I  UPDATE DATABASE CONFIGURATION 命令成功完成。
db2 get db cfg for ceshi
………………
日志文件大小(4KB)                         (LOGFILSIZ) = 2048
主日志文件的数目                           (LOGPRIMARY) = 20
辅助日志文件的数目                          (LOGSECOND) = 4

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值