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

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

WBOY
WBOYOriginal
2016-06-07 17:37:191809Durchsuche

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数据库备份恢复的概念和知识点

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

160826301.jpg


数据库备份文件结构

161123967.jpg


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


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


手动恢复数据库的顺序


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


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


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


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



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

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn