下面我们来看一下示例数据库采用归档日志方式下配置自动备份的条件和循环日志方式下有什么不同的情况(我们接着上面所述进行,即自动数据库备份(AUTO_DB_BACKUP)参数已经被设置成ON),在DB2CLP窗口环境中,把LOGARCHMETH1参数设置成LOGRETAIN,具体如清单5所示。
- - 清单 5 .更改数据库参数
C:\> db2 connect to db2test1
数据库连接信息
数据库服务器 = DB2 / NT 9.1.0
SQL 授权标识 = RHETTE
本地数据库别名 = DB2TEST1
C:\> db2 UPDATE DATABASE CONFIGURATION USING LOGARCHMETH1 LOGRETAIN IMMEDIATE
DB20000I UPDATE DATABASE CONFIGURATION命令成功完成。
SQL1363W 为立即修改而提交的一个或多个参数未动态更改。对于这些配置参数,必须在所有应用程序都与此数据库断开连接之后,更改才会生效。
建议大家使用LOGARCHMETH1,此参数指定已归档日志的主要目标的介质类型,不要继续使用LOGRETAIN或USEREXIT参数。LOGARCHMETH1参数缺省值为OFF,取值范围可以是 LOGRETAIN、 USEREXIT、 DISK、TSM或VENDOR,各自的含义如下:
l OFF
指定不使用日志归档方法。如果 LOGARCHMETH1 和LOGARCHMETH2都设置为 OFF,那么认为数据库正在使用循环日志记录,且不可前滚恢复。这是缺省值。
l LOGRETAIN
此值仅可用于 LOGARCHMETH1,且等价于将 LOGRETAIN 配置参数设置为 RECOVERY。 如果指定此值,将自动更新 LOGRETAIN 配置参数。
l USEREXIT
此值仅对 LOGARCHMETH1 有效,且等价于将 USEREXIT 配置参数设置为 ON。如果指定此值,将自动更新 USEREXIT 配置参数。
l DISK
此值后必须紧跟冒号(:),然后是现有标准路径名,日志文件将在其中归档。例如,如果将 LOGARCHMETH1 设置为 DISK:/u/dbuser/archived_logs,那么将归档日志文件放入名为 /u/dbuser/archived_logs的目录。
注: 如果正在归档至磁带,可以使用 db2tapemgr 实用程序来存储和检索日志文件。
l TSM
如果指定不带任何附加配置参数,此值指示应该使用缺省管理类,将日志文件归档在本地 TSM 服务器上。如果此值后紧跟冒号(:)和 TSM 管理类,那么使用指定的管理类来归档日志文件。
l VENDOR
指定将使用供应商库来归档日志文件。此值后必须紧跟冒号(:)和库的名称。库中提供的 API 必须使用备份并复原供应商产品的 API。
注: 如果将 LOGARCHMETH1 或LOGARCHMETH2设置为 OFF 以外的值,那么必须配置数据库以进行前滚恢复。
如果更新 USEREXIT 或 LOGRETAIN 配置参数,将自动更新 LOGARCHMETH1,反之亦然。然而,如果您要使用 USEREXIT 或 LOGRETAIN, 必须将LOGARCHMETH2设置为 OFF。
更改成功后,此时你执行如下清单6所示命令:
- - 清单 6 .断开示例数据库DB2TEST1所有应用程序连接
C:\> db2 force applications all
DB20000I FORCE APPLICATION命令成功完成。
DB21024I 该命令为异步的,可能不会立即生效。
命令成功后,用LIST APPLICATIONS看所有应用程序是否都断开了,如果没有断开,再重复执行FORCE APPLICATIONS ALL,保证断开后,把数据库做一次全备,具体如清单7所示。
- - 清单 7 .备份数据库
C:\> db2 backup db db2test1
备份成功。此备份映像的时间戳记是:20070923163536
命令执行成功后,在DB2CLP窗口中连接上数据库,发出GET DB CFG命令,我们再次查看示例数据库的配置参数,发现第一个日志归档方法(LOGARCHMETH1)已经被修改成LOGRETAIN了,至此,我们启用了归档日志方式 。查看示例数据库参数的详细情况具体如清单8所示:
- - 清单 8 .查看示例数据库DB2TEST1参数
C:\> db2 connect to db2test1
数据库连接信息
数据库服务器 = DB2 / NT 9.1.0
SQL 授权标识 = RHETTE
本地数据库别名 = DB2TEST1
C:\> db2 get db cfg for db2test1
数据库 db2test1 的数据库配置
数据库配置发行版级别 = 0x0b00
数据库发行版级别 = 0x0b00
数据库地域 = CN
数据库代码页 = 1386
数据库代码集 = GBK
数据库国家/地区代码 = 86
数据库整理顺序 = UNIQUE
备用整理顺序 ( ALT_COLLATE ) =
数据库页大小 = 4096
. . . . . . . . . . . . . . . . . . . .
日志文件大小(4KB) ( LOGFILSIZ ) = 1024
主日志文件的数目 ( LOGPRIMARY ) = 13
辅助日志文件的数目 ( LOGSECOND ) = 4
已更改的至日志文件的路径 ( NEWLOGPATH ) =
日志文件路径 = C:\DB2\NODE0000\SQL00004\SQLOGDIR\
溢出日志路径 ( OVERFLOWLOGPATH ) =
镜像日志路径 ( IRRORLOGPATH ) =
首个活动日志文件 = S0000000.LOG
磁盘上已满的块日志 ( LK_LOG_DSK_FUL ) = NO
事务使用的最大主日志空间的百分比 ( AX_LOG ) = 0
1 个活动 UOW 的活动日志文件的数目 ( UM_LOG_SPAN ) = 0
组落实计数 ( INCOMMIT ) = 1
软检查点前回收的日志文件的百分比 ( OFTMAX ) = 520
启用的恢复的日志保留 ( LOGRETAIN ) = RECOVERY
启用的日志记录的用户出口 ( SEREXIT ) = OFF
. . . . . . . . . . . . . . . . . . . .
第一个日志归档方法 ( LGARCHMETH1 ) = LOGRETAIN
logarchmeth1 的选项 ( LOGARCHOPT1 ) =
第二个日志归档方法 ( LOGARCHMETH2 ) = OFF
logarchmeth2 的选项 ( LOGARCHOPT2 ) =
故障转移日志归档路径 ( FAILARCHPATH ) =
错误时重试日志归档次数 ( NUMARCHRETRY ) = 5
日志归档重试延迟(秒) ( ARCHRETRYDELAY ) = 20
供应商选项 ( VENDOROPT ) =
. . . . . . . . . . . . . . . . . . . .
自动维护 ( AUTO_MAINT ) = ON
自动数据库备份 ( AUTO_DB_BACKUP ) = ON
自动表维护 ( AUTO_TBL_MAINT ) = ON
自动 runstats ( AUTO_RUNSTATS ) = ON
自动统计信息概要分析 ( AUTO_STATS_PROF ) = OFF
自动概要文件更新 ( AUTO_PROF_UPD ) = OFF
自动重组 ( AUTO_REORG ) = OFF
此时我们在控制中心在示例数据库DB2TEST1上右键单击,选择自动维护窗口, 打开,在第五个页面“选择要配置的维护活动”页面中对“备份数据库(BACKUP)”这条记录中的“自动化”列打上勾即可,注意,另一个列“已使用的维护窗口”默认值此时已经是“联机”,和我们使用循环日志的时候不一样,循环日志方式下此列的默认值是“脱机”,具体界面如图10所示:
图10:配置自动维护窗口选择配置的维护活动页面
接下来双击“备份数据库(BACKUP)”记录,或者选中这条记录并单击页面下面的“配置设置”按钮,就会打开“配置设置-备份数据库(BACKUP)”窗口,在其第一个标签页“备份条件”中,可以指定用于确定此数据库上合适需要进行备份的条件,需要注意的是,如果数据库从未备份过,则一旦有机会就将执行备份。其实,你已经发现了,归档日志方式下的自动维护窗口备份条件,多了两次备份之间已经使用的最大日志空间选项。可选的条件有:
1. 优化数据库可恢复性(更频繁地备份):两次备份之间的最大时间间隔1天,备份之间使用的最大日志空间10MB
2. 平衡数据库可恢复性和性能:两次备份之间的最大时间间隔1周,备份之间使用的最大日志空间25MB
3. 优化数据库性能(不太频繁地备份):两次备份之间的最大时间间隔1个月,备份之间使用的最大日志空间50MB
4. 定制:两次备份之间的最大时间间隔和备份之间使用的最大日志空间自己定制
具体界面如图11所示:
图11 :配置设置-备份数据库(BACKUP)窗口
归档日志方式下的配置自动维护窗口的其他页面和上面所述的循环日志方式下差不多,不再累述。


image020.jpg