数据库

本类阅读TOP10

·SQL语句导入导出大全
·SQL Server日期计算
·SQL语句导入导出大全
·SQL to Excel 的应用
·Oracle中password file的作用及说明
·MS SQLServer OLEDB分布式事务无法启动的一般解决方案
·sqlserver2000数据库置疑的解决方法
·一个比较实用的大数据量分页存储过程
·如何在正运行 SQL Server 7.0 的服务器之间传输登录和密码
·SQL中两台服务器间使用连接服务器

分类导航
VC语言Delphi
VB语言ASP
PerlJava
Script数据库
其他语言游戏开发
文件格式网站制作
软件工程.NET开发
浅谈DB2数据库的备份与恢复(上)

作者:未知 来源:月光软件站 加入时间:2005-2-28 月光软件站

随着银行业的不断发展壮大,计算机网络和数据库的应用越来越广泛,其中数据库,特别是大型数据库的安全问题,已得到广大广大数据库管理员的重视。为了防止数据的意外丢失或损坏,必须对数据采取有效的备份手段。

所谓数据备份,就是保留一套备用系统,当运行系统出现故障时,能够以最小的时间恢复原来的数据。数据库的备份,可以是整个数据库的拷贝,也可以是其中一部分数据的拷贝(一个或多个表空间)。数据备份一般有两个层次:

  • 硬件级备份:用冗余的硬件来保证系统的连续运行,比如双机容错、硬盘镜像等方式。如果主硬件损坏,后备硬件能够立刻接替其工作。

  • 软件级备份:将系统数据保存到其他可以移动的介质上,如磁带、软盘、光盘等。当系统出现故障后,可以将系统恢复到备份时的状态。本文主要讨论的是数据库的软件级备份。

IBM的DB2数据库早已在世界范围赢得非常好的信誉,是受到广大用户青睐的数据库系统之一。本文讨论的是 DB2 5.5 for AIX 数据库系统的备份与恢复。

一、DB2数据库的备份

DB2数据库可以备份整个数据库,也可以备份其中的一个或多个表空间;可以在应用连接到数据库时和事务正在处理时进行备份(这称为联机备份),也可以在没有任何应用连接到数据库时进行备份(这称为脱机备份)。(见表一

DB2数据库使用命令BACKUP来备份。BACKUP命令需要SYSADM,SYSCTRLSYSMAINT的权限,其命令语法为:

BACKUP DATABASE 数据库别名 TO 介质名

或者

BACKUP DATABASE 数据库别名 TABLESPACE 表空间名 [ONLINE} TO 介质名

其中介质名一般指定为介质的绝对路径,在 AIX 中不回转的磁带机设备名为 /dev/rmt0,回转的磁带机设备名为 /dev/rmt0.n 。也可将数据备份在硬盘上,介质名即为其绝对路径。BACKUP命令在指定的介质上生成一个或多个备份文件,以下显示了在 AIX 4.3 for RS/6000 上生成的文件名结构:

AIX 4.3 for RS/6000 上生成的文件名结构

以下是 BACKUP 命令的一些例子:

(1)此例子是在指定的服务器目录 /backup/mydb 下给 mydb 数据库创建一个完整的备份:

BACKUP DATABASE mydb TO /backup/mydb

(2)此例子是给 mydb 数据库中指定的表空间 myspace1 进行联机备份,在进行备份时,应用可继续更新数据库:

BACKUP DATABASE mydb TABLESPACE myspace1 ONLINE TO /backup/mydb

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

如果不允许进行向前恢复 如果允许进行向前恢复

在发生失败后,可以把数据库恢复到失败前与最后一次事务一致的状态。

同样,也支持恢复到与最后一次事务一致的状态。

可以把数据库恢复到任何有效的备份状态,但是不能重新执行发生在备份之后的事务。

可以把数据库恢复到任何有效的备份状态,并且可以重新执行从发生失败到当前为止提交的事务。

只能在没有任何应用连接到数据库时进行备份(这称为脱机备份)。

可以在应用连接到数据库时和事务正在处理时进行备份(这称为联机备份)。同样支持脱机备份。

每一个备份都必须包含整个数据库的当前状态。

一个备份可能包含整个数据库的当前状态,或者是一个或多个表空间。数据库的表空间可以单独地备份和恢复。




相关文章

相关软件