DB2归档日志的相关信息保存在恢复历史文件中,可以通过 db2 list history 命令查看。
db2inst1@suse-db:~> db2 list history archive log all for ggyy
List History File for ggyy
Number of matching file entries = 6
Op Obj Timestamp+Sequence Type Dev Earliest Log Current Log Backup ID
-- --- ------------------ ---- --- ------------ ------------ --------------
X D 20100103235553 1 D S0000038.LOG C0000007
----------------------------------------------------------------------------
----------------------------------------------------------------------------
Comment:
Start Time: 20100103235553
End Time: 20100103235553
Status: A
----------------------------------------------------------------------------
EID: 80 Location: /data/palog/db2inst1/GGYY/NODE0000/C0000007/S0000038.LOG
Op Obj Timestamp+Sequence Type Dev Earliest Log Current Log Backup ID
-- --- ------------------ ---- --- ------------ ------------ --------------
X D 20100103235553 N S0000038.LOG
----------------------------------------------------------------------------
----------------------------------------------------------------------------
Comment: ARCHIVE LOG
Start Time: 20100103235553
End Time: 20100103235553
Status: A
----------------------------------------------------------------------------
EID: 81
Op Obj Timestamp+Sequence Type Dev Earliest Log Current Log Backup ID
-- --- ------------------ ---- --- ------------ ------------ --------------
X D 20100103235608 1 D S0000039.LOG C0000007
----------------------------------------------------------------------------
----------------------------------------------------------------------------
Comment:
Start Time: 20100103235608
End Time: 20100103235608
Status: A
----------------------------------------------------------------------------
EID: 82 Location: /data/palog/db2inst1/GGYY/NODE0000/C0000007/S0000039.LOG
......
清除这些信息,需要使用 db2 prune history 命令。该命令会清除指定时间戳及之前的所有条目(不只是归档日志的)。默认情况下,系统不会清除最近一次数据库全备之后的归档日志信息。
db2inst1@suse-db:~> db2 prune history 20100103235553
SQL1024N A database connection does not exist. SQLSTATE=00000
db2inst1@suse-db:~> db2 connect to ggyy
Database Connection Information
Database server = DB2/LINUX 9.7.0
SQL authorization ID = DB2INST1
Local database alias = GGYY
db2inst1@suse-db:~> db2 prune history 20100103235553
DB20000I The PRUNE command completed successfully.
db2inst1@suse-db:~> db2 list history archive log all for ggyy | head -20
List History File for ggyy
Number of matching file entries = 6
Op Obj Timestamp+Sequence Type Dev Earliest Log Current Log Backup ID
-- --- ------------------ ---- --- ------------ ------------ --------------
X D 20100103235553 1 D S0000038.LOG C0000007
----------------------------------------------------------------------------
----------------------------------------------------------------------------
Comment:
Start Time: 20100103235553
End Time: 20100103235553
Status: A
----------------------------------------------------------------------------
EID: 80 Location: /data/palog/db2inst1/GGYY/NODE0000/C0000007/S0000038.LOG
db2inst1@suse-db:~> db2 list history backup all for ggyy
List History File for ggyy
Number of matching file entries = 0
对数据库进行一次全备,再次尝试清除:
db2inst1@suse-db:~> db2 backup db ggyy online to /data/backup
Backup successful. The timestamp for this backup image is : 20100104004121
db2inst1@suse-db:~> db2 connect to ggyy
Database Connection Information
Database server = DB2/LINUX 9.7.0
SQL authorization ID = DB2INST1
Local database alias = GGYY
db2inst1@suse-db:~> db2 prune history 20100103235553
DB20000I The PRUNE command completed successfully.
db2inst1@suse-db:~> db2 list history archive log all for ggyy | head -20
List History File for ggyy
Number of matching file entries = 5
Op Obj Timestamp+Sequence Type Dev Earliest Log Current Log Backup ID
-- --- ------------------ ---- --- ------------ ------------ --------------
X D 20100103235608 1 D S0000039.LOG C0000007
----------------------------------------------------------------------------
----------------------------------------------------------------------------
Comment:
Start Time: 20100103235608
End Time: 20100103235608
Status: A
----------------------------------------------------------------------------
EID: 82 Location: /data/palog/db2inst1/GGYY/NODE0000/C0000007/S0000039.LOG
通过使用 and delete 参数,可以在清理条目的同时删除对应的归档日志文件。
db2inst1@suse-db:~> ls -l /data/palog/db2inst1/GGYY/NODE0000/C0000007
total 48
-rw-r----- 1 db2inst1 db2iadm1 12288 2010-01-03 23:55 S0000038.LOG
-rw-r----- 1 db2inst1 db2iadm1 12288 2010-01-03 23:56 S0000039.LOG
-rw-r----- 1 db2inst1 db2iadm1 12288 2010-01-03 23:56 S0000040.LOG
-rw-r----- 1 db2inst1 db2iadm1 12288 2010-01-04 00:41 S0000041.LOG
db2inst1@suse-db:~> db2 prune history 20100103235608 and delete
DB20000I The PRUNE command completed successfully.
db2inst1@suse-db:~> db2 list history archive log all for ggyy | head -20
List History File for ggyy
Number of matching file entries = 3
Op Obj Timestamp+Sequence Type Dev Earliest Log Current Log Backup ID
-- --- ------------------ ---- --- ------------ ------------ --------------
X D 20100103235618 1 D S0000040.LOG C0000007
----------------------------------------------------------------------------
----------------------------------------------------------------------------
Comment:
Start Time: 20100103235618
End Time: 20100103235618
Status: A
----------------------------------------------------------------------------
EID: 84 Location: /data/palog/db2inst1/GGYY/NODE0000/C0000007/S0000040.LOG
db2inst1@suse-db:~> ls -l /data/palog/db2inst1/GGYY/NODE0000/C0000007
total 36
-rw-r----- 1 db2inst1 db2iadm1 12288 2010-01-03 23:55 S0000038.LOG
-rw-r----- 1 db2inst1 db2iadm1 12288 2010-01-03 23:56 S0000040.LOG
-rw-r----- 1 db2inst1 db2iadm1 12288 2010-01-04 00:41 S0000041.LOG
可以看到,归档日志文件S0000039.LOG已被删除,但S0000038.LOG还存在,因为之前已经清除了S0000038.LOG的相关条目。
尝试同时清除S0000040.LOG和S0000041.LOG:
db2inst1@suse-db:~> db2 list history archive log all for ggyy | tail -15
Op Obj Timestamp+Sequence Type Dev Earliest Log Current Log Backup ID
-- --- ------------------ ---- --- ------------ ------------ --------------
X D 20100104004127 1 D S0000041.LOG C0000007
----------------------------------------------------------------------------
----------------------------------------------------------------------------
Comment:
Start Time: 20100104004127
End Time: 20100104004128
Status: A
----------------------------------------------------------------------------
EID: 86 Location: /data/palog/db2inst1/GGYY/NODE0000/C0000007/S0000041.LOG
db2inst1@suse-db:~> db2 prune history 20100104004127 and delete
DB20000I The PRUNE command completed successfully.
db2inst1@suse-db:~> db2 list history archive log all for ggyy | head -20
List History File for ggyy
Number of matching file entries = 1
Op Obj Timestamp+Sequence Type Dev Earliest Log Current Log Backup ID
-- --- ------------------ ---- --- ------------ ------------ --------------
X D 20100104004127 1 D S0000041.LOG C0000007
----------------------------------------------------------------------------
----------------------------------------------------------------------------
Comment:
Start Time: 20100104004127
End Time: 20100104004128
Status: A
----------------------------------------------------------------------------
EID: 86 Location: /data/palog/db2inst1/GGYY/NODE0000/C0000007/S0000041.LOG
db2inst1@suse-db:~> ls -l /data/palog/db2inst1/GGYY/NODE0000/C0000007/
total 24
-rw-r----- 1 db2inst1 db2iadm1 12288 2010-01-03 23:55 S0000038.LOG
-rw-r----- 1 db2inst1 db2iadm1 12288 2010-01-04 00:41 S0000041.LOG
S0000041.LOG依然存在,因为它是全备之后生成的。如果想要强制清除,可以使用 with force option 参数。
db2inst1@suse-db:~> db2 prune history 20100104004127 with force option and delete
DB20000I The PRUNE command completed successfully.
db2inst1@suse-db:~> db2 list history archive log all for ggyy | head -20
List History File for ggyy
Number of matching file entries = 0
db2inst1@suse-db:~> ls -l /data/palog/db2inst1/GGYY/NODE0000/C0000007/
total 12
-rw-r----- 1 db2inst1 db2iadm1 12288 2010-01-03 23:55 S0000038.LOG
注意,这里连带着将数据库全备的条目也删除了,但备份文件还在:
db2inst1@suse-db:/data/backup> db2 list history backup all for ggyy
List History File for ggyy
Number of matching file entries = 0
db2inst1@suse-db:/data/backup> ls -l /data/backup
total 99994
-rw------- 1 db2inst1 db2iadm1 102293504 2010-01-04 00:41 GGYY.0.db2inst1.NODE0000.CATN0000.20100104004121.001
此外,使用 db2 prune logfile 命令可以清除活动日志目录下的在线归档日志文件,但对离线归档日志文件无效,这里不再赘述。
分享到:
相关推荐
DB2的日志清理工作,db2 list history archive log all for CISFEDB 查看归档时间戳以及归档日志个数,Number of matching file entries = 6 表示有效日志个数 5.1、db2 force application all 停连接会话
DB2归档日志恢复
由于使用了LOGRETAIN=ON数据库配置,所以数据库日志文件将不会被数据库从活动日志目录中自动删除或循环利用,活动日志目录中的日志文件将会越来越多,所以需要对该目录下的日志文件进行归档。
db2数据库开归档日志
管理数据库日志的工作可以手工完成,也可由编写...由于DB2对所有平台都提供了相应的USEREXIT示例程序,而且非常易于修改和使用,所以IBM建议用户使用USEREXIT程序来管理日志文件。本文介绍了使用USEREXIT程序的方法。
NULL 博文链接:https://killeraction.iteye.com/blog/1431486
db2 日志详解 里边包含有对数据库配置文件中有关日志的一些参数设置方法和解释
运行这个脚本之后系统将会自动根据参数进行配置,会自动定时去备份数据及处理日志!数据库和日志都是一个月删除一次,本月的第一次成功完整备份后删除上一个月的数据,但日志会较数据库备份多存放一周! 运行脚本...
db2报错日志,db2日常维护经常遇到的错误日志。
-logdir 数据库日志归档的目录(临时存放日志文件夹) -bklog 数据库日志存放及处理的文件夹 -setdb 数据库的名字 一般推荐使用如下命令: ./set.sh -dbdir /home/databackup -logdir /mylogs -bklog /home/...
ibm db2数据库事务日志已满的完全解决方法
DB2的错误日志,方便差错误哦!又小又方便
DB2故障诊断指南,db2diag.log日志分析
DB2错误操作手册(日志错误汇总),DB2错误操作手册(日志错误汇总)
本文主要讲解了解决db2事务日志已满及日志磁盘空间已满的问题,DB2总的可用活动日志的最大空间是有限制的,当达到限制之后,就会发生日志满的问题
Linux下,DB2开发最常用命令总结,全面、使用、正确。希望能对各位有所帮助
db2表空间不足及处理
DB2数据库基本操作 DB2数据库 1、Load 方法装入数据: export to tempfile of del select * from TABLENAME where not 清理条件; load from tempfile of del modified by ...nonrecoverable无日志方式装入
DB2DB2DB2DB2DB2DB2DB2DB2DB2
db2驱动包 db2jcc4.jar db2jcc4.jar db2java.jar db2jcc_javax.jar db2jcc_license_cisuz.jar db2jcc_license_cu.jar db2policy.jar,压缩包无加密,可以放心下载,良心资源。