DB2增删改都会涉及事务,以便于出错时候能够回滚。当日志满了,还要继续添加日志,就会报-964的错误:
DB2查看日志的命令是:
查看数据库的配置参数:get db cfg for <dbname>
查看出很多配置信息,下面几项是我们的日志信息:
Log file size (4KB) (LOGFILSIZ) = 1024
Number of primary log files (LOGPRIMARY) = 13
Number of secondary log files (LOGSECOND) = 4
Changed path to log files (NEWLOGPATH) =
Path to log files = /dbdir/db2inst1/NODE0
以上参数说明:
日志文件大小(4KB) (LOGFILSIZ) = 1024 (每个日志文件大小为1024*4KB=4MB)
主日志文件的数目 (LOGPRIMARY) = 13
辅助日志文件的数目 (LOGSECOND) = 4
总大小为:(13+4)*4=68M
修改事务日志的命令
修改数据库的配置参数:update db cfg for <dbname> using <p> <v>
修改日志文件大小:update db cfg for <dbname> using LOGFILSIZ 4096
修改主日志文件个数:update db cfg for <dbname> using LOGPRIMARY 6
修改辅助日志文件个数:update db cfg for <dbname> using LOGSECOND 10
这写参数是有范围的,在早前版本中最大可达256G,其大小为( logprimary + logsecond ) * logfilsiz,其中logprimary + logsecond的值小于或等于256,logfilsiz的最大为262144,在9.5版本中,日志最大已经可以达到512G,其中logfilsz的大小更改为524286。