• 网络学院
  • 新手学堂
  • 操作系统
  • 网络技术
  • 软件应用
  • 办公软件
  • 编程技术
  • 网站架设
  • 数据库类
  • 平面设计
  • 多媒体类
  • 游戏资讯
  • 教学论文
  • 认证考试
浅谈DB2数据库的备份与恢复(下)
广告位
  站点:
  • 首 页
  • 最新软件
  • 最新文章
  • 国内软件
  • 国外软件
  • 汉化软件
  • 源码下载
  • 字体下载
浅谈DB2数据库的备份与恢复(下)
软件发布 浅谈DB2数据库的备份与恢复(下)
网络软件 系统工具 应用软件 联络聊天 图形图像 多媒体类 行业软件 游戏娱乐 编程开发 安全相关 教育教学 数码软件
热门软件: QQ 瑞星 pplive e话通 木马克星 千千静听 office2000 五笔字根 Photoshop 视频分割
返回首页 | 文章首页 | 数据库类 | DB2 | 浅谈DB2数据库的备份与恢复(下)

浅谈DB2数据库的备份与恢复(下)

 

添加时间: 2006-3-22 4:48:02  作者: DB2教程  阅读次数:479   来源: http://www.d9soft.com

 

 

       

二、DB2数据库的恢复

DB2数据库提供了三种恢复类型:

1、崩溃恢复(crash recovery):崩溃恢复是用来在失败后立即进行恢复,把数据库恢复到一个事务一致状态,此状态的所有更改只有在执行提交事务后才生效。崩溃恢复使用命令 RESTART 执行。

2、备份恢复(restore recovery):备份恢复可从上一次所作的备份中恢复数据库的内容。备份恢复使用 RESTORE 命令执行。

3、向前恢复(forward recovery):在一个数据库从备份中恢复了以后,向前恢复可以重新执行那些在备份后才更改了数据库的操作。在这种情况下,数据库可以恢复到备份和当前时间之间的任何时间断。向前恢复使用 ROLLFORWORD 命令执行。

崩溃恢复和备份恢复对任何数据库都适用,而向前恢复只有在数据库被指定可以使用此功能是才使用。表一显示了此功能带来的影响。

表一 数据库能否进行向前恢复带来的影响

如果不允许进行向前恢复 如果允许进行向前恢复
在发生失败后,可以把数据库恢复到失败前与最后一次事务一致的状态。
 同样,也支持恢复到与最后一次事务一致的状态。
 
可以把数据库恢复到任何有效的备份状态,但是不能重新执行发生在备份之后的事务。
 可以把数据库恢复到任何有效的备份状态,并且可以重新执行从发生失败到当前为止提交的事务。
 
只能在没有任何应用连接到数据库时进行备份(这称为脱机备份)。
 可以在应用连接到数据库时和事务正在处理时进行备份(这称为联机备份)。同样支持脱机备份。
 
每一个备份都必须包含整个数据库的当前状态。
 一个备份可能包含整个数据库的当前状态,或者是一个或多个表空间。数据库的表空间可以单独地备份和恢复。
 

可以通过把数据库配置参数 LOGRETAIN 或 USEREXIT 设置为 YES 来使向前恢复生效。日志会由于生成新的文件而不断增加,并且它们是无限制的。在这种情况下,必须采取一些办法把旧的日志文件保存到文档中,以防止文件系统被日志占满。

1、RESTART 命令

此命令是当一些操作还在处理时发生断电或软件崩溃后要发出的第一个命令。它建立一个数据库的连接,并使用日志来把数据库恢复到事务一致状态。所有在失败发生前由提交操作所引起的数据库更改都会生效。所有在失败前被撤消的操作和失败时正在处理的事务对数据库进行的更改都被撤消。

下面是 RESTART 命令的例子:

RESTART DATABASE mydb

2、RESTORE 命令

此命令使用存储在备份中的内容来恢复数据库的内容。RESTORE 命令可以创建一个新的数据库。RESTORE 命令需要 SYSADM,SYSCTRL或SYSMAINT特权。RESTORE 命令要使用的备份可能包含整个数据库或一组表空间。恢复整个数据库必须脱机进行,恢复表空间可以联机进行,也就是在还有应用连接到数据库时进行。RESTORE 命令语法为:

RESTORE DB 目标数据库别名 [TABLESPACE 表空间名] [FROM 介质名] [TAKEN AT 时间]

下面是一些 RESTORE 命令的例子:

(1)从一个特定目录(/backup/mydb)中的备份来恢复 mydb 数据库。如果 mydb 不能够进行向前恢复,数据库将被恢复到备份时的状态,而且可以立即使用。如果能够进行向前恢复,数据库会被置为向前挂起(pending)状态,直到它被执行向前恢复命令之后才能被使用。

RESTORE DATABASE mydb FROM /backup/mydb

(2)下面的命令是对数据库 mydb 进行恢复,并且在外部指定不进行向前恢复,数据库可以被立即使用。

RESTORE DATABASE mydb FROM /backup/mydb WITHOUT ROLLING FORWARD

(3)下面的例子是从一个指定的目录(/backup/mydb)中来恢复 mydb 数据库的一个指定的表空间,此恢复要使用指定的日期和时间:

RESTORE DATABASE mydb TABLESPACE ONLINE FROM /backup/mydb TAKEN AT 20000926201226

3、ROLLFORWARD 命令

ROLLFORWARD 命令是在执行了一个 RESTORE 命令之后执行的,以便对数据库或它的表空间进行向前恢复。ROLLFORWARD 命令需要SYSADM,SYSCTRL 或 SYSMAINT 特权,并且数据库必须能够进行向前恢复。

ROLLFORWARD 命令可以适用于整个数据库或是一个或多个表空间,它们的状态此时都是向前挂起(pending)的。如果向前恢复整个数据库,此过程必须是脱机的,而且数据库可以被恢复成备份时间和当前时间之中的任何时间段。如果只向前恢复单独的表空间,此过程既可以是联机的也可以是脱机的,但是必须把表空间向前恢复到当前时间后,再重新执行所有引起更改的提交操作,这样可保证被恢复的表空间和数据库中的其它部分保持一致。ROLLFORWARD 命令语法为:

ROLLFORWARD DATABASE 数据库名 [TO {时间,END OF LOGS}][TABLESPACE {ONLINE,表空间名}]

下面是一些 ROLLFORWARD 命令的例子:

(1)此例子使 mydb 数据库恢复到当前时刻。字句 AND STOP 是让数据库不被置为 ROLLFORWARD PENDING 状态,并且可以被存取:

ROLLFORWARD DATABASE mydb TO END OF LOGS AND STOP

(2)下面的例子向前恢复 mydb 数据库,并重新执行在指定日期和时间之前提交的所有事务:

ROLLFORWARD DATABASE mydb TO 2000-09-26-10.3059 AND STOP

(3)下面的例子只把数据库 mydb 中的某一表空间向前恢复。此命令是在执行了一次表空间级别的恢复后发出的,它只适用于被恢复的表空间。此命令指出向前恢复是联机进行的,并且要进行到当前时间(日志末尾):

ROLLFORWARD DATABASE mydb TO END OF LOGS AND STOP TABLESPACE ONLINEChina It Power

 

 

 

上下文章:

 

上一篇文章: DB2数据库 下一篇文章: 浅谈DB2数据库的备份与恢复(上)

相关文章:

  • 浅谈网站推广之有针对性的手法
  • Ghost有漏洞 镜像恢复需小心陷阱
  • QQ非法关闭后恢复功能设计预览图
  • Oracle下调数据库许可价格以适应多芯CPU
  • Oracle发布免费数据库管理工具Raptor

相关软件:

  • 文件备份专家 V2.55
  • 子墨数据库同步工具 V1.0.0.0
  • QQ聊天记录备份软件 V1.2
  • DiskWin企业备份软件 V7.21
  • GGhost一键恢复 bBild 080604 光盘版
  • GGhost一键恢复 Build 080604 全能版

 

 

快速导航

  • 网络学院
  • 精品汇聚
  • 字体下载
  • 教程下载
  • ASP源码
  • PHP源码
  • Net源码
  • JSP 源码

数据库类分类导航

  • SQL Server
  • MySQL Server
  • DB2
  • Oracle
  • ACCESS
  • Foxpro
  • PowerBuilder
  • Sybase

本类经典文章推荐

  • DB2编程序技巧 (十)
  • DB2编程序技巧 (九)
  • DB2编程序技巧 (八)
  • DB2编程序技巧 (七)
  • DB2编程序技巧 (六)
  • DB2编程序技巧 (五)
  • DB2编程序技巧 (四)
  • DB2编程序技巧 (三)
  • DB2编程序技巧 (二)
  • DB2编程序技巧 (一)

DB2阅读排行

  • 浅谈DB2数据库的备份与恢复(下)
  • 浅谈DB2数据库的备份与恢复(上)
  • DB2常用傻瓜问题1000问(之一)
  • DB2编程序技巧 (一)
  • IBM DB2 日常维护汇总(六)
  • DB2编程序技巧 (二)
  • DB2编程序技巧 (十)
  • DB2编程序技巧 (四)
  • IBM DB2 日常维护汇总(三)
  • DB2编程序技巧 (七)

数据库类阅读总排行

  • MySQL中的SQL-- TEXT、DATE、和SE...
  • MYSQL初学者使用指南 上篇
  • 怎样在vc、delphi中使用mysql(mys...
  • MySQL数据导入与导出之二
  • SQL Server数据库技术(96)
  • MYSQL初学者使用指南 下篇
  • SQL Server数据库技术(98)
  • SQL Server数据库技术(60)
  • 精通数据库系列之入门-基础篇
  • 如何把ACCESS的数据导入到Mysql中

广告位置

字母检索 A B C D E F G H I J K L M N O P Q R S T U V W X Y Z 回到顶部

关于我们 | 版权声明 | 免责条款 | 广告联系 | 软件发布 | 下载帮助 | 下载排行 | 网站地图 | 特别鸣谢 | 友情连接

copyright; 2005-2008 D9soft.com 第九软件网 版权所有