首页 >数据库 >mysql教程 >db2的日志模式和备份归档、恢复解析

db2的日志模式和备份归档、恢复解析

WBOY
WBOY原创
2016-06-07 17:37:191836浏览

DB2的日志分为两种模式,日志循环与归档日志,也就是非归档和归档模式。下面就具体介绍一下这两种方式以及和备份归档设置的关系。一、日志循环这是默认方式,也

   DB2的日志分为两种模式,日志循环与归档日志,也就是非归档和归档模式。下面就具体介绍一下这两种方式以及和备份归档设置的关系。

  一、日志循环

  这是默认方式,也就是非归档模式,这种模式只支持(backup offline)脱机备份,在备份过程中需要DB2停止服务。

  并适当调整日志文件大小和主辅日志的文件个数。


最后就是要注意这两个参数的设置

Options for logarchmeth1                  (LOGARCHOPT1) =

Second log archive method                 (LOGARCHMETH2) =

有以下几种情况:

1、Logarchmeth1设置为LOGRETAIN,Logarchmeth2设置为OFF

  这时归档日志位置就是DB2数据库日志的位置,需要人工干预归档日志的转移和空间维护工作

2、Logarchmeth1设置为USEREXIT,Logarchmeth2设置为OFF

  这时归档日志的管理交由USEREXIT来处理,通过设置编译USEREXIT可以实现相对复杂一些的归档管理方式

3、Logarchmeth1设置为指定目录,Logarchmeth2设置为OFF

  归档日志的工作将会自动进行,需要归档日志将会被自动归档到指定的位置,由于归档是自动进行,DB2的日志目录中只有正常logprimary logsecond个数的数据库日志。

4、Logarchmeth1设置为,Logarchmeth2设置为

  归档日志的工作将会自动进行,需要归档日志将会被自动归档到指定的位置,也就是会产生两份归档日志。由于归档是自动进行,DB2的日志目录中只有正常logprimary+logsecond个数的数据库日志。对性能有一定的影响。

  或者都可以设置为TSM。一般推荐为文件系统,设置为TSM,这样既可以归档到TSM离线保存,,又可以在线使用文件系统中的归档日志,比较方便。

  注意:设置Logarchmeth1和Logarchmeth2后,数据库会进入backup pending状态,必须进行一次脱机备份,数据才会进入recovery模式并且正常工作。


三、备份与恢复

1、简单的冷备与恢复

$ db2 backup db [dbname] to 路径
$ db2 restore db [dbname] from 路径 taken at 时间戳

2、在线热备与恢复

$ db2 backup db dbname online to 路径 include logs

$ db2 restore db dbname from 路径 taken at 时间戳

$ db2 "rollforward db dbname to 2013-02-31-20.00.00.000000 using local time and complete overflow log path (/backup/logs)"    前滚日志恢复至指定时间点

3、查看备份记录

$ db2 list history backup all for dbname   可以看到备份的纪录


附:DB2数据库备份恢复的概念和知识点

备份类型:脱机备份(也称冷备份或离线备份)、联机备份(也称热备份或在线备份)、完全备份、增量备份(也称累积备份)、差异备份

db2的日志模式和备份归档、恢复解析


数据库备份文件结构

db2的日志模式和备份归档、恢复解析


恢复类型:崩溃恢复、版本恢复、前滚恢复(任意时间点恢复,恢复到最近时间点)


恢复情形:完全恢复、不完全恢复


手动恢复数据库的顺序


日志类型:循环日志(默认)、归档日志(活动日志、在线归档日志、离线归档日志)


日志类型与恢复类型:循环日志只支持崩溃恢复和版本恢复,归档日志支持所有类型的恢复


凡是联机备份产生的备份集在恢复时都需要使用归档日志,归档日志方式是是允许用户执行前滚(rollforward)恢复的唯一方法。


前滚的时间要在最小恢复时间点之后,最后的事务提交时间点之前。



本文出自 “滴水穿石” 博客,请务必保留此出处

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn