下面我们以一个简单的例子配置DB2将日志归档到磁盘说明如何使用DB2版本8.2提供的新功能:
1、更新数据库SAMPLE的配置参数(请在更新之前确保使用的目录已经建立,而且DB2实例用户有合适的权限):
| D:\Temp>db2 update db cfg for sample using logarchmeth1 DISK:D:\TEMP\logarc1
DB20000I UPDATE DATABASE CONFIGURATION 命令成功完成。 D:\Temp>db2 update db cfg for sample using failarchpath d:\temp\logarc2 DB20000I UPDATE DATABASE CONFIGURATION 命令成功完成。 |
注意:如果先前你没有设置为归档日志模式,您设置完参数后可能需要先做一个数据库的脱机备份。例如:
db2 backup db sample to
2、查看一下数据库SAMPLE的目前日志归档参数设置:
|
D:\Temp>db2 get db cfg for sample 第一个日志归档方法 (LOGARCHMETH1) = DISK:D:\TEMP\logarc1\ logarchmeth1 的选项 (LOGARCHOPT1) = 第二个日志归档方法 (LOGARCHMETH2) = OFF logarchmeth2 的选项 (LOGARCHOPT2) = 故障转移日志归档路径 (FAILARCHPATH) = d:\temp\logarc2\ 错误时重试日志归档次数 (NUMARCHRETRY) = 5 日志归档重试延迟(秒) (ARCHRETRYDELAY) = 20 供应商选项 (VENDOROPT) = 。。。 |
3、检查db2diag.log,可以看到参数设置改变的信息:
|
2004-10-26-19.30.25.245000+480 I14933654H408 LEVEL: Event PID : 1872 TID : 2592 PROC : db2syscs.exe INSTANCE: DB2 NODE : 000 DB : SAMPLE APPHDL : 0-89 APPID: *LOCAL.DB2.041026024848 FUNCTION: DB2 UDB, config/install, sqlfLogUpdateCfgParam, probe:20 CHANGE : CFG DB SAMPLE: "Logarchmeth1" From: "" To: "DISK:D:\TEMP\logarc1" 2004-10-26-19.30.47.987000+480 I14934064H404 LEVEL: Event PID : 1872 TID : 2592 PROC : db2syscs.exe INSTANCE: DB2 NODE : 000 DB : SAMPLE APPHDL : 0-89 APPID: *LOCAL.DB2.041026024848 FUNCTION: DB2 UDB, config/install, sqlfLogUpdateCfgParam, probe:20 CHANGE : CFG DB SAMPLE: "Failarchpath" From: "" To: "d:\temp\logarc2\" |
4、对数据库SAMPLE进行更新操作,以便写满日志文件,触发日志归档。我们通过重复往staff表中插入数据实现:
|
D:\Temp>db2 connect to sample 数据库连接信息 数据库服务器 = DB2/NT 8.2.0 SQL 授权标识 = BIYJ 本地数据库别名 = SAMPLE D:\Temp>db2 insert into staff select * from staff DB20000I SQL 命令成功完成。 |
重复执行上述命令。直至有日志文件写满触发日志归档。
