日期:2014-05-16  浏览次数:20372 次

db2 事务日志

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的值小于或等于256logfilsiz的最大为262144,在9.5版本中,日志最大已经可以达到512G,其中logfilsz的大小更改为524286。