DB2数据库归档日志的管理方案简介

2008-6-18    来源:ccidnet.com    我要评论
   | |

导读:由于使用了LOGRETAIN=ON数据库配置,数据库日志文件将不会被删除或循环利用,日志文件越来越多,IBM建议用户使用USEREXIT程序来管理日志文件。

关键词:LOGRETAIN=ON 数据库 日志文件 USEREXIT 管理

正在加载数据...

  需求描述

  由于使用了LOGRETAIN=ON数据库配置,所以数据库日志文件将不会被数据库从活动日志目录中自动删除或循环利用,活动日志目录中的日志文件将会越来越多,所以需要对该目录下的日志文件进行归档。

  问题分析

  将LOGRETAIN设置为ON后,数据库将支持前滚恢复。此时,系统中将会存在三种类型的日志文件:

  活动日志:该日志包含尚未提交或回滚的事务单元的相关信息,以及已提交但尚未写入数据库文件的事务的信息。

  联机存档日志:活动日志中所有改动对正常处理已不需要,即该日志中所记录的事务都已提交并写入数据库文件时,该活动日志转换为联机存档日志。称之为联机,是由于它们与活动日志存放在同一个目录下。

  脱机存档日志:将联机存档日志从活动日志目录下Copy到另外的地方存档,就称为脱机存档日志。这些日志可能在数据库前滚恢复的时候仍然需要。

  管理数据库日志的工作可以手工完成(即将联机存档日志手工拷贝到某个archive目录),也可由编写USEREXIT程序自动维护。

  由于DB2对所有平台都提供了相应的USEREXIT示例程序,而且非常易于修改和使用,所以IBM建议用户使用USEREXIT程序来管理日志文件。

  使用USEREXIT程序的方法

  要使用User exit program自动化log文件的archiving和retrieval过程:

  1. 设置database cfg参数logarchmeth1 为USEREXIT。 connect to sample
update db cfg using logarchmeth1 USEREXIT
connect reset

  2. 创建user exit programs。该程序必须是一个名为db2uext2的可执行文件。DB2在各种平台上都提供了User Exit的示例程序,用户可以通过直接修改该样本文件来实现自己的user exit程序。

  在UNIX(R) based的系统中,该程序存放在sqllib/samples/c目录下. There are four sample user exit programs for UNIX based systems:
? db2uext2.ctsm
This sample uses Tivoli(R) Storage Manager to archive and retrieve database log files.
? db2uext2.ctape
This sample uses tape media to archive and retrieve database log files .
? db2uext2.cdisk
This sample uses the operating system COPY command and disk media to archive and
retrieve database log files.
? db2uxt2.cxbsa
This sample works with the XBSA Draft 0.8 published by the X/Open group.
It can be used to archive and retrieve database log files. This sample is
only supported on AIX.
?

  在Windows(R) 系统中,该文件存放在sqllib/samples/c目录下。 There are two sample user exit programs for Windows operating systems:
? db2uext2.ctsm
This sample uses Tivoli Storage Manager to archive and retrieve database log files.
? db2uext2.cdisk
This sample uses the operating system COPY command and disk media to archive
and retrieve database log files.

  3. 配置该示例程序,指定要将日志文件Archive到哪个系统目录中(在windows平台下,程序中默认为c:\mylogs)。 #define ARCHIVE_PATH "c:\\mylogs\\"
#define RETRIEVE_PATH "c:\\mylogs\\"
#define AUDIT_ERROR_PATH "c:\\mylogs\\"

  4. 编译该C文件。 cl db2uext2.c

  5. 拷贝db2uext2.exe到/SQLLIB/BIN目录下。

  6. 在db2cmd中键入archive log for db sample user db2admin using duan1980命令强制执行log日志归档任务。查看c:\mylogs目录下有无日志文件归档,验证是否成功。

 
 
 
 
 
 

DB2备份与恢复

 
如果备份或者恢复一个DB2数据库需要花费几个小时时间,那么及时这个备份与恢复方案再安全,也于事无补。

热门技术手册排行

 

在本次的技术手册中,我们为您提供了PL/SQL的基础知识以及专家指导,包括了PL/SQL中的数据类型简介、PL/SQL函数与触发器以及PL/SQL中的存储过程等,相信您无论是高手还是菜鸟都可以获得有帮助的信息。

 

本系列文章由三部分组成,为Oracle数据库管理员(DBA)面试成功的必备手册。本专题内容囊括从DBA最初的面试开始,从写“杀手简历”到求职信、到面试过程到Oracle认证再到上升到公司高层最后到你成为公司里的明星DBA。专家为你一一指点迷津,最终让你登上成功的宝座。

 

要成为一名DBA,你需要具备哪些素质?DBA的薪酬待遇如何?DBA的职业道路究竟可以走向何方?我们将在本次的技术手册中为您一一解答。

 

在本次技术手册中,我们将对SQL Server存储过程的调试进行详细的介绍,包括了基础的调试方法和在调试过程中出现的T-SQL性能问题和解决方法。

 

本技术专题主要围绕sql server设计这个话题展开,侧重介绍了sql server集簇索引的设计、如何创建sql server索引、如何优化索引、索引的能与不能、处理sql server 2000索引碎片技巧以及维护sql server索引以实现查询优化等等。

查看更多
 
 

登录TechTarget中国

关闭
本服务仅向TechTarget中国的会员开放,请登录或立即免费注册
电子邮件地址:
请输入您的电子邮件地址
密码:
下次自动登录