文档库 最新最全的文档下载
当前位置:文档库 › 数据库备份与恢复技术

数据库备份与恢复技术

数据库备份与恢复技术
数据库备份与恢复技术

Oracle数据库备份与恢复技术

Oracle是一个适合于大中型企业的数据库管理系统,它主要应用于:银行、电信、移动通信、航空、保险、金融、跨国公司、和电子商务等。备份与恢复是数据库管理中最重要的方面之一。如果数据库崩溃却没有办法恢复它,那么对企业造成的毁灭性结果可能会是数据丢失、收入减少、客户不满等。不管公司是使用单个数据库还是多个数据库来存储数百GB 或TB 的数据,它们都有一个共同点,即需要制订一个备份与恢复方案来备份重要数据并使自身免于灾难,将损失尽量降低到最小。

备份与恢复概述

备份是数据的一个代表性副本。该副本会包含数据库的重要部分,如控制文件、重做日志和数据文件。备份通过提供一种还原原始数据的方法保护数据不受应用程序错误的影响并防止数据的意外丢失。备份分为物理备份和逻辑备份。物理备份是物理数据库文件的副本。“备份与恢复”通常指将复制的文件从一个位置转移到另一个位置,同时对这些文件执行各种操作。

相比而言,逻辑备份包含使用SQL 命令导出并存储在二进制文件中的数据。Oracle 在重做日志缓冲区中记录提交的和未提交的更改。逻辑备份用于补充物理备份。还原物理备份意味着重建它并将其提供给Oracle 服务器。要恢复还原的备份,需要使用事务日志中的重做记录来更新数据。事务日志记录在执行备份之后对数据库所做的更改。

Oracle 在例程故障之后自动执行崩溃恢复和实例恢复。在出现介质故障的情况下,数据库管理员(DBA) 必须启动恢复操作。恢复备份涉及两种不同的操作:通过应用重做数据将备份前滚至一个较近的时间;将在未提交的事务中所做的所有更改回滚至其原来状态。一般而言,恢复指在还原、前滚和回滚备份中涉及的各种操作。备份与恢复指在防止数据库丢失数据和在丢失数据时重建数据库的过程中涉及的各种策略和操作。

备份与恢复操作

备份是数据文件、表空间或某个时间点的数据库等的快照。如果对数据库进行了周期性备份,则在数据丢失时用户可以将存储的重做信息应用到他们最新的备份中,从而恢复数据库的当前状态。Oracle 使用户能够还原一个较早的备份和仅应用某些重做数据,从而将数据库恢复到一个较早的时间点。这种恢复称为不完全介质恢复。如果备份是一致的,那么根本不需要用户应用任何重做数据。

下面用介质恢复的一个简单例子来解释一下这个概念。假定用户在中午为数据库作了一个备份。从中午开始,每一分钟对数据库进行一次更改。在下午 1 点时,一个磁盘驱动器出现故障,导致那个磁盘上的所有数据丢失。幸运的是,Oracle 在重做日志中记录了所有更改。则用户可以将中午的备份还原到一个正常运转的磁盘驱动器上,使用重做数据将数据库恢复到下午1 点,从而重建丢失的更改。

备份与恢复策略要素

尽管备份与恢复操作非常复杂并随因企业而异,但基本原则均遵循这四个简单的步骤:

1.创建联机重做日志的多个副本

2.在ARCHIVELOG 模式下运行数据库,并将重做日志存档至多个位置

3.维护控制文件的多个并发备份

4.时常备份物理数据文件,并将它们存储在一个安全的地方;如果可能,创建多个

副本

只要用户在安全的存储器备份了数据库并存档了重做日志,就可以重建原始数据库。

备份与恢复的主要数据结构

在用户开始认真考虑备份与恢复策略之前,必须明确与备份和恢复操作相关的物理数据结构。本节讨论了以下物理数据结构:

?数据文件

?控制文件

?联机重做日志文件

?存档重做日志文件

?自动管理的撤消

数据文件

每个Oracle 数据库都有属于称为表空间的逻辑结构的一个或多个物理数据文件。数据文件被分为更小的称为数据块的单元。逻辑数据库结构的数据(如表和索引)物理上位于为数据库分配的数据文件的块中。数据文件具有以下特性:

?用户自定义的特性允许数据文件在数据库空间不足时自动扩展。

?一个或多个物理数据文件组成了一个称为表空间的逻辑数据库存储单元。

每个数据文件的第一个块均为头(header)。头包括诸如文件大小、块大小、表空间和创建时间戳记等重要信息。只要打开数据库,Oracle 就检查数据文件头信息是否与存储在控制文件中的信息匹配。如果不匹配,则必须进行恢复。Oracle 在正常操作期间读取数据文件中的数据,并将其存储在缓冲区高速缓存中。例如,假定用户要访问表中的一些数据。如果请求的信息尚未出现缓冲区高速缓存中,则Oracle 将从相应的数据文件中读取它并将其存储在内存中。

控制文件

每个Oracle 数据库都有一个控制文件,该文件包含组成数据库的所有其它文件的操作系统文件名。这个重要的文件还包含在恢复期间使用的一致性信息,如:

?数据库名称

?数据库创建时间戳记

?数据库的数据文件以及联机和存档重做日志文件的名称

?检查点—在重做日志中指示在这个点之前的所有数据库更改都已保存在数据文件中的一条记录。

?恢复管理器(RMAN) 备份元数据

用户可以创建控制文件的多个副本,从而允许Oracle 写控制文件的多个副本以防止灾难的发生。如果操作系统支持磁盘镜像,那么也可以创建控制文件的镜像,从而允许O/S 将控制文件的一个副本写到多个磁盘上。每一次用户挂载Oracle 数据库时,均使用它的控制文件来识别数据文件和联机重做日志文件(必须为数据库操作而打开)。如果更改了数据库的物理组成,如创建了一个新的数据文件或重做日志文件,则Oracle 将修改数据库的控制文件以反映该更改。只要更改了数据库的结构,就应备份控制文件。结构更改可能包括添加、删除或更改数据文件或表空间以及添加或删除联机重做日志。

联机重做日志文件

重做日志对于恢复绝对至关重要。例如,假定一次电力中断使Oracle 无法将修改的数据永久写入数据文件中。在这种情况下,可以把数据文件中较早版本的数据与记录在联机重做日志中的最近更改结合起来重建丢失的数据。每个Oracle 数据库都包含一组两个或多个联机重做日志文件。Oracle 为每个重做日志文件分配一个日志序列号以唯一地标识它。该组数据库重做日志文件共同称为数据库的重做日志。

Oracle 使用重做日志记录对数据库所做的所有更改。Oracle 在重做记录(重做缓冲区中一个描述更改的条目)中记录每一个更改。例如,假定用户更新了工资单表中的一个列值(从5 改为7)。Oracle 将旧值记录在撤销记录中,将新值记录在重做记录中。因为重做日志存储了对数据库所做的每次更改,所以这个事务的重做记录实际上包含了三个部分:

?对撤消事务表所做的更改

?对撤消数据块所做的更改

?对工资单表数据块所做的更改

如果用户随后提交了对工资单表所做的更新—使得由SQL 语句执行的更改变为永

久性的—那么Oracle 将生成另一条重做记录。通过这种方式,系统仔细地监视着在数据库中发生的一切。

重做日志文件的循环使用

日志写入器(LGWR) 将重做日志条目写到磁盘上。重做日志数据是在系统全局区的重做日志缓冲区中生成的。随着事务的提交和日志缓冲区的充满,LGWR 将重做日志条目写到一个联机重做日志文件中。LGWR 以循环方式书写联机重做日志文件:当它写满了当前联机重做日志文件(称为活动文件)时,LGWR 将写入下一个可用非活动重做日志文件。LGWR 循环使用数据库中的联机重做日志文件,覆盖旧的重做数据。根据是否启用了存档,写满的重做日志文件可按以下方式进行重用:

?如果禁用了存档,则一旦将记录在日志中的更改保存到数据文件中,就可再次使用写满的联机重做日志了。

?如果启用了存档,则一旦将更改保存到数据文件中并将文件存档后,就可再次使用写满的联机重做日志了。

存档重做日志文件

存档日志文件是Oracle 已经在其中写满了重做条目、将其以非活动状态提供并拷贝到

一个或多个日志存档目标位置的重做日志。Oracle 可以在两种模式中的任意一种之下运行:

?ARCHIVELOG — Oracle 在周期中重用写满的联机重做日志文件之前将其存档。

?NOARCHIVELOG — Oracle 在周期中重用写满的联机重做日志文件之前不将其存档。

在ARCHIVELOG 模式下运行数据库有以下好处:

?数据库可以从实例故障和介质故障中完全恢复过来。

?用户可以执行联机备份,即在数据库打开并且可供使用的同时备份表空间。

?可将存档的重做日志传输并应用到备用数据库中

?Oracle 支持多重存档日志,以避免存档日志上任何可能的单点故障。

?用户拥有更多恢复选择,如能够执行表空间时间点恢复(TSPITR)

在NOARCHIVELOG 模式下运行数据库有以下后果:

?用户只能在正常停机后、数据库完全关闭时备份数据库。

?一般而言,唯一的介质恢复选择就是还原整个数据库,这将导致丢最后一次备份后执行的所有事务。

自动管理的撤消

每个Oracle 数据库都必须有一种方法来保留用于回滚或撤消对数据库所做更改的信息。这种信息包含了事务的操作的记录(主要在提交这些操作之前)。Oracle 将这些记录统称为撤消。过去,Oracle 曾使用回滚段存储撤消。事实证明,对这些回滚段的空间管理十分复杂。Oracle 现在提供了存储撤消的另一种方法,它消除了管理回滚段空间的复杂性,并为DBA 提供对撤消被覆盖前所保留时间的控制。这种方法使用一个撤消表空间。撤销记录用于:

?在执行ROLLBACK 语句时回滚事务

?恢复数据库

?提供读一致性

当执行回滚语句时,撤销记录用于撤销由未提交的事务对数据库所做的更改。在数据库恢复期间,撤销记录用于撤销从重做日志应用到数据文件中的任何未提交的更改。在一个用户更改数据的同时,撤销记录将为访问数据的另一用户保留数据的前镜像,从而提供读一致性。

了解基本备份

备份策略为防止数据丢失提供了安全防护。回答以下问题可以帮助数据库管理员制订一个强大的备份策略:

?可能出现何种类型的故障?

?应当备份哪些信息?

?应当使用哪种备份方法?

?应当联机还是离线备份?

?备份的频率?

?如何避免危险的备份方法?

可能出现何种类型的故障?

数据丢失的原因各种各样。下面是可能导致数据丢失的一些最常见的故障类型。

语句故障是Oracle 程序在处理语句时的逻辑错误。例如,用户执行了无效SQL 结构的语句。当发生语句故障时,Oracle 自动撤销语句的所有效果并将控制返回给用户。

进程故障是访问Oracle 的用户进程中出现的故障(即异常断开或进程终止)。尽管Oracle 和其他的用户进程可以继续工作,但出现故障的用户进程将不能继续工作。如果用户进程在更改数据库时出现故障,则Oracle 后台进程将撤销未提交事务的效果。

实例故障是使Oracle 实例(即SGA 和后台进程)无法继续工作的问题。实例故障可能源于硬件问题(如电力中断)或软件问题(如操作系统崩溃)。当实例出现故障时,Oracle 不会将SGA 缓冲区中的数据写到数据文件中。

用户或应用程序错误是导致数据丢失的用户错误。例如,用户可能无意地从工资单表中删除数据。这种用户错误可能需要将数据库或对象恢复到该错误发生前的某个时间点上。为了允许从用户错误中恢复过来并满足其他独特的恢复要求,Oracle 提供了闪回技术。

介质故障是当Oracle 试图写或读操作数据库所需要的文件时出现的物理问题。一个常见的例子是磁盘头损坏,它将导致磁盘驱动器上的所有数据丢失。磁盘故障可能影响各种文件(包括数据文件、重做日志文件和控制文件)。因为数据库实例无法继续正常工作,所以它无法将SGA 的数据库缓冲区中的数据写到数据文件中。

应当备份哪些信息?

一个数据库包含各种类型的数据。当制订备份策略时,DBA 必须确定他们要复制哪些信息。基本的备份类型包括:

?联机数据库备份

?离线数据库备份

?整个数据库

?表空间

?数据文件

?控制文件

?存档重做日志

?配置文件

在确定要备份的信息时,基本的原则是根据数据的重要性和更改的程度来确定数据的优先级。例如,虽然存档日志不发生变化,但它们对恢复数据库至关重要,因此如果可

能应维护多个副本。然而,费用帐户表被用户不断更新。因此,应当经常备份该表空间,以防止在恢复时不得不应用过多的重做数据。

可以以多方式组合备份。例如,DBA 可以决定每周执行整个数据库的备份,以确保获得原始数据库信息的一个相对较新的副本,而每天备份使用最频繁的表空间。DBA 还可以为所有重要的控制文件和存档重做日志创建多个副本作为额外的安全防护。

联机数据库备份

联机备份也称为开放备份,其中所有的读-写数据文件和控制文件都没有对相同的SCN 设置检查点。例如,一个读-写数据文件头可能包含一个为100 的SCN,而其他读-写数据文件头包含一个为95 或90 的SCN。在所有这些头SCN 一致前,即将联机重做日志中记录的所有更改都保存到磁盘上的数据文件前,Oracle 无法打开数据库。如果数据库必须保持不间断运行,则您除了在ARCHIVELOG 模式下执行整个数据库的联机备份之外别无选择。

离线数据库备份

在这种备份中,所有的数据文件和控制文件在相同的时间点上都保持一致—例如,对相同的SCN 保持一致。在一个一致的备份中被允许拥有旧SCN 的唯一表空间是只读且“离线-正常”的表空间,它们与备份中的其他数据文件保持一致。这种类型的备份允许用户打开由备份创建的文件集,而无需应用重做日志,这是因为数据已经是一致的了。执行这种备份的唯一方式是正常关闭数据库,然后在数据库关闭时执行备份。一个一致的整个数据库备份是为在NOARCHIVELOG 模式下运行的数据库提供的唯一有

效的备份选择。

整个数据库备份

这种最常见的备份类型—整个数据库备份—包含了控制文件以及属于该数据库的

所有数据库文件。如果在ARCHIVELOG 模式下运行,则DBA 还可以选择在一段时间内备份数据库的不同部分,从而一部分一部分地构建整个数据库备份。

表空间备份

表空间备份是数据库的一个子集。表空间备份只有当数据库在ARCHIVELOG 模式下运行时才有效。表空间备份对于在NOARCHIVELOG 模式下运行的数据库有效的唯一时间是当该表空间只读或离线正常时。

数据文件备份

数据文件备份是单个数据文件的备份。数据文件备份没有表空间备份那么常见,并且只有当数据库在ARCHIVELOG 模式下运行时才有效。数据文件备份对于在NOARCHIVELOG 模式下运行的数据库有效的唯一时间是当数据文件是表空间中唯一的文件时。例如,备份是表空间备份,但表空间只包含一个文件并且只读或离线正常。

控制文件备份

控制文件备份是数据库控制文件的备份。如果数据库是打开的,那么用户可以通过执行以下SQL 语句或使用恢复管理器(RMAN) 来创建有效的备份:ALTER DATABASE BACKUP CONTROLFILE to 'location'。

存档重做日志备份

存档重做日志是成功的介质恢复的关键。您希望根据可用磁盘空间和在数据库上执行的事务的数量在磁盘上尽可能长时间地保留存档日志,并定期备份它们以确保较完整的恢复。

配置文件

配置文件可能包含spfile 文件或init.ora、口令文件、tnsnames.ora 和sqlnet.ora。因为这些文件不经常变化,所以它们不需要频繁备份。如果您丢失了某个配置文件,您可以很容易地重新手动创建它。当还原时间更重要时,还原配置文件的一个备份要比以特定格式手动创建一个文件要快得多。

应当使用哪种备份方法?

Oracle 为用户提供了几种创建备份的基本方法以备选择。这些方法包括:

?恢复管理器(RMAN) —建立与服务器进程的连接并使备份与恢复操作的数据转移自动化的一个组件。

?Oracle 企业管理器—调用恢复管理器的GUI 界面。

?Oracle Data Pump —该实用程序通过将数据以专有格式从Oracle 数据库写入操作系统文件来创建逻辑备份。稍后可以将这种数据导入数据库中。

?用户管理的方法—通过执行特别针对用户操作系统的命令手动备份数据库。

创建恢复管理器备份

恢复管理器(RMAN) 是一个强大的通用程序,它允许用户创建RMAN 备份或用户数据的镜像副本。当用户使用RMAN BACKUP 命令指定文件或存档日志时,RMAN 默认创建一个备份集作为输出。一个备份集是专有格式的一个文件或一些文件,它需要使用RMAN RESTORE 命令来进行恢复操作。相比而言,当使用BACKUP AS COPY 命令创建文件的镜像副本时,它是实例可用(instance-usable) 格式的—用户不需要调用恢复管理器即可还原或恢复它。

当执行RMAN 命令(如备份或还原)时,恢复管理器建立了一个与Oracle 服务器进程的连接。然后服务器进程从目标数据库中备份指定的数据文件、控制文件或存档日志。恢复目录是包含各种对备份和恢复有用的信息的中央信息库。RMAN 自动建立备份所需的所有文件的名称和位置。恢复管理器还支持增量备份—仅备份那些自上次备份以来发生变化的块。在传统的备份方法中,必须备份数据文件中用到的所有数据块。

自动的基于磁盘的备份和恢复

创建不同的与备份和恢复相关的文件的组件对彼此一无所知,或者也不了解它们存储数据的文件系统的大小。利用自动的基于磁盘的备份和恢复,您可以创建一个闪回恢复区,它将使与备份相关的文件的管理自动化。在磁盘上选择一个位置和存储空间的上界,并设置一个保留策略—它控制需要为恢复保留备份文件的时间。数据库在这个空间内为您的数据库管理用于备份的存储器、存档日志和其他与恢复相关的文件。当RMAN 需要为新的文件回收空间时,可以删除不再需要的文件。如果您不使用闪回恢复区,则您必须为与备份相关的文件手动管理磁盘空间并平衡不同类型文件间的空间使用。Oracle Corporation 建议您启用一个闪回恢复区以简化您的备份管理。

Oracle 企业管理器

尽管通常把恢复管理器用作一个命令行实用程序,但Oracle 企业管理器中的备份向导是GUI 界面,通过点击即可实现备份与恢复。Oracle 企业管理器(EM) 支持用户常用的备份与恢复特性。

?备份配置,用于定义和保存常用配置以供重复使用

?备份与恢复向导,用于引导用户完成创建备份脚本的步骤并将其作为计划作业提交

?备份作业库,用于保存可以被检索并应用到多个目标上的常用备份作业

?备份管理,用于查看并在RMAN 备份上进行维护。

使用Data Pump 提供额外备份保护

可以使用Data Pump 实用程序创建数据的逻辑备份来补充物理备份。逻辑备份存储为数据库创建的模式对象的相关信息。Data Pump 以专有格式将数据从数据库写入Oracle 文件中,然后可以使用导入实用程序将这些文件导入数据库中。

用户管理的备份

可以使用操作系统命令(如UNIX dd 或tar 命令)来创建备份。还可以通过编写脚本来使备份操作自动化。用户可以一次性创建整个数据库的备份或备份个别的表空间、数据文件、控制文件或存档日志。个别表空间、数据文件、控制文件和存档日志的备份可以补充整个数据库备份。如果数据库关闭或数据库进入热备份模式来执行联机备份,则还可以使用O/S 命令来执行这些备份。

了解基本的恢复策略

基本的恢复包含两个部分:还原物理备份,然后用自最后一次备份以来对数据库所做的更改更新它。恢复的最重要方面是确保所有的数据文件就相同时间点而言是一致的。Oracle 具有完整性检查,以防止用户在所有数据文件彼此保持一致之前打开数据库。在准备恢复策略时,了解这些问题的答案至关重要:

?恢复如何工作?

?恢复的类型有哪些?

?应当使用哪种恢复方法?

恢复如何工作?

在每一种类型的恢复中,Oracle 都按顺序将重做数据应用到数据块中。Oracle 使用控制文件和数据文件头中的信息来确定是否必须进行恢复。恢复有两个部分:前滚和回滚。当Oracle 前滚时,它将重做数据应用到相应的数据块中。Oracle 系统地遍览重做日志,以确定它需要将哪些更改应用到哪些块中,然后更改这些块。例如,如果用户向表中添加了一行,但服务器在将更改保存到磁盘之前就崩溃了,则Oracle 可以使用这个事务的重做记录来更新该数据块以反映该新行。

一旦Oracle 完成了前滚阶段,就可以打开Oracle 数据库了。回滚阶段在数据库打开后开始。回滚信息存储在事务表中。Oracle 在整个表中搜索未提交的事务,撤销它找到的任何未提交的事务。例如,如果用户从未提交添加行的SQL 语句,则Oracle 将在事务表中发现这一事实并撤销该更改。

恢复的类型有哪些?

有三种基本的恢复类型:实例恢复、崩溃恢复和介质恢复。Oracle 在实例启动时自动执行前两种恢复。只有介质恢复需要用户执行命令。当一个实例发现另一个实例已经崩溃时,实例恢复(只可能在Oracle 真正应用集群配置中存在)将在打开的数据库中进行。一个幸存的实例将自动使用重做日志来恢复数据库缓冲区中已提交但在实例出现故障时丢失的数据。Oracle 还将撤销当实例崩溃时在出现故障的实例上正在进行的任何事务,然后在恢复完成之后清除崩溃的实例拥有的任何锁。

崩溃恢复在单实例数据库崩溃或多实例数据库的所有实例崩溃时发生。在崩溃恢复中,实例必须首先打开数据库,然后执行恢复操作。一般而言,在崩溃或关机退出之后第一个打开数据库的实例将自动执行崩溃恢复。

与崩溃恢复和实例恢复不同,介质恢复通常响应介质故障并根据用户的命令来执行。在介质恢复中,可以使用联机或存档重做日志来使还原的备份为最新或将其更新至一个特定的时间点。介质恢复可以还原整个数据库、一个表空间或一个数据文件并将它们还原至指定的时间。无论何时使用重做日志或将数据库恢复到某个非当前时间,都将执行介质恢复。

总可以使用还原的备份来执行该种恢复。介质恢复主要分为完全恢复和不完全恢复。完全恢复涉及将重做数据与数据库、表空间或数据文件等的备份结合使用以将其更新至最新的时间点。它之所以称为完全备份是因为Oracle 将所有重做更改应用到备份上。通常,介质恢复在介质故障损坏了数据文件或控制文件之后执行。

恢复选项

如果用户没有将数据库完全恢复至最新时间,那么必须指示Oracle 要恢复到什么程度。用户可以执行:

?表空间时间点恢复(TSPITR),它使用户能够将一个或多个表空间恢复至与数据库其余的部分不同的某个时间点。

?基于时间的恢复,也称为时间点恢复(PITR),它将数据恢复至一个指定的时间点。

?基于取消的恢复,它恢复到执行CANCEL 命令为止。

?基于更改的恢复或日志序列恢复。如果使用了O/S 命令,那么基于更改的恢复将一直恢复到重做记录中一个指定的SCN 为止。

?从人为错误中闪回

如果使用了恢复管理器,那么日志序列恢复将一直恢复到一个指定的日志序列号。当执行不完全恢复时,用户必须在打开数据库时重置联机重做日志。重置数据库的新版本称为一个新化身。用RESETLOGS 选项打开数据库将告知Oracle 丢弃一些重做。在Oracle 数据库10g 中,控制文件增加了新的结构,这些结构提供了利用先前化身的备份通过RESETLOGS 操作进行恢复的能力。

从人为错误中恢复

Oracle 数据库10g 体系结构利用了人为错误的数据库恢复领域中独有的技术进展。闪回技术提供了一组新功能,可及时查看数据并在时间上前后滚动数据。使用闪回功能,

可以查询模式对象的过去版本、查询历史数据、执行变化分析,或执行自助修复,以便在数据库联机时从逻辑损坏中恢复。利用Oracle 数据库10g 闪回技术,您完全可以取消过去的操作!

应当使用哪种备份方法?

用户有两种物理文件恢复基本方法可以选择。他们可以:

?使用恢复管理器进行自动恢复。

?执行SQL 命令。

使用恢复管理器进行恢复

基本的RMAN 命令是RESTORE 和RECOVER。RMAN 可用于从备份集或镜像副本中将数据文件还原至它们当前的位置或一个新位置。如果需要任何存档的重做日志来完成恢复操作,RMAN 将自动还原并应用它们。在恢复目录中,RMAN 保留了一个包含与执行过的每次备份相关的所有基本信息的记录。如果没有使用恢复目录,则RMAN 将使用控制文件来获取必需的信息。RMAN RECOVER 命令可以用来执行完全介质恢复,应用增量备份,以及执行不完全介质恢复。

使用SQL*Plus 进行恢复

管理员能够在命令行使用SQL*Plus 实用程序在文件上进行还原和执行介质恢复。用户可以恢复数据库、表空间或数据文件。在执行恢复之前,用户需要:

?确定要恢复哪些文件。通常可以使用表V$RECOVER_FILE。

?还原介质故障永久损坏的文件的备份。即使用户没有备份,在用户拥有必要的重做日志文件且控制文件包含损坏文件的名称时仍可以执行恢复。

?如果无法将文件还原至其原始位置,则用户必须重新定位还原的文件并将该新位置通知控制文件。

?还原必要的存档重做日志文件。

总而言之

Oracle 数据库的备份和恢复对于保护数据不受崩溃、硬件故障和数据故障的影响非常重要。虽然Oracle 提供了许多特性来保护您的数据,但备份是不可或缺的。

第10章 数据库恢复技术

一、单项选择题 1. 在DBMS中实现事务持久性的子系统是( )。 A.安全管理子系统 B.完整性管理子系统 C.并发控制子系统 D.恢复管理子系统 [参考答案] 恢复管理子系统 2. 后援副本的作用是( )。 A.保障安全性 B.一致性控制 C.故障后的恢复 D.数据的转储 [参考答案] 故障后的恢复 3. 事务日志用于保存( )。 A.程序运行过程 B.程序的执行结果 C.对数据的更新操作 D.数据操作 [参考答案] 对数据的更新操作 4. 数据库恢复的基础是利用转储的冗余数据。这些转储的冗余数据包括( )。 A.数据字典、应用程序、审计档案、数据库后备副本 B.数据字典、应用程序、审计档案、日志文件 C.日志文件、数据库后备副本 D.数据字典、应用程序、数据库后备副本 [参考答案] 日志文件、数据库后备副本 5. 若系统在运行过程中,由于某种硬件故障,使存储在外存上的数据部分损失或全部损失,这种情况称为( )。 A.介质故障 B.运行故障 C.系统故障 D.事务故障 [参考答案] 介质故障 6. SQL语言中用( )语句实现事务的回滚。 A.CREATE TABLE B.ROLLBACK C.GRANT和REVOKE https://www.wendangku.net/doc/6417208777.html,MIT [参考答案] ROLLBACK

7. SQL语言中的COMMIT语句的主要作用是( )。 A.结束程序 B.返回系统 C.提交事务 D.存储数据 [参考答案] 提交事务 8. 事务的持续性是指( )。 A.事务中包括的所有操作要么都做,要么都不做; B.事务一旦提交,对数据为的改变是永久的; C.一个事务内部的操作及使用的数据对并发的其他事务是隔离的; D.事务必须是使数据库从一个一致性状态变到另一个一致性状态; [参考答案] 事务一旦提交,对数据为的改变是永久的; 9. 表示两个或多个事务可以同时运行而不互相影响的是( )。 A.原子性 B.一致性 C.隔离性 D.持久性 [参考答案] 隔离性 10. 一个事务的执行,要么全部完成,要么全部不做,一个事务中对数据库的所有操作都是一个不可分割的操作序列的属性是( )。 A.原子性 B.一致性 C.隔离性 D.持久性 [参考答案] 原子性 二、填空题 1. 数据库系统在运行过程中,可能会发生故障。故障主要有事务故障、( )、介质故障和( )四类。 [参考答案] 系统故障计算机病毒 2. ( )是DBMS的基本单位,它是用户定义的一组逻辑一致的程序序列。 [参考答案] 事务 3. 若数据库中只包含成功事务提交的结果,则此数据库就称为处于( )状态。 [参考答案] 一致 4. ( )用来记录对数据库中数据进行的每一次更新操作。 [参考答案] 日志文件

DB2数据库备份与恢复

DB2数据库备份与恢复 1.备份 下列操作均是在db2cmd窗口下执行的: 1.1离线备份(必须在数据库所在PC机进行操作) STEP 1 连接到要备份的数据库 C:\Documents and Settings\Administrator>db2 connect to ncc user nccwykpi using nccwykpi STEP 2 显示数据库应用状态 C:\Documents and Settings\Administrator>db2 list applications 页脚内容1

STEP 3 停掉数据库应用 C:\Documents and Settings\Administrator>db2 force applications all 注意:由于该命令是异步的,所以在进行备份的时候会出现以下错误信息。此时可以再次执行db2 force applications all 命令。 页脚内容2

STEP 4 对数据库进行离线状态下的备份 C:\Documents and Settings\Administrator>db2 backup database ncc to d:\db2\backup 注意:指定的备份文件的输出目录必须是已创建的,否则会报错。 STEP 5 查看备份历史记录 C:\Documents and Settings\Administrator>db2 list history backup all for ncc 页脚内容3

页脚内容4

页脚内容5

1.2在线备份 注意:如果要做在线的备份,要对两个参数作修改:USEREXIT和 LOGRETAIN,将其 修改为on,默认是off的,默认使用日志模式,修改完参数后,可以变为归档日志模式,启用了userexit做数据库日志的归档。 STEP 1 查看数据库当前的属性 C:\Documents and Settings\Administrator>db2 get db cfg 页脚内容6

数据库备份和还原操作方法

数据库备份和还原 在收费系统运行一段时间后,如发生系统不正常要重装WINDOWS操作系统或更换电脑时,须按照下面“数据库备份”方法将原系统的数据文件备份,并将备份文件妥善保存(避免随系统重装而丢失数据),在重装系统或更换电脑后,按照软件的安装方法顺序安装SQL2000数据库和消费/水控管理软件,然后按照下面“数据还原”方法进行数据库还原,完成后系统中的数据即与原数据完全[相同。 数据库备份: 以ICSF为例,打开ICSF软件,选择菜单栏下的系统维护,然后选择数据备份。(系统维护——数据备份)如图(1-1): 1-1 数据备份完成后,可以在基本资料——系统参数里(1-2),在弹出的对话框上的备份路径二(手动备份)里可以找到数据备份的路径(1-3)。如图:

1-2 1-3 提示: 1、上述方法为手动备份,本系统在使用后正常腿出系统时也会自动进行 数据备份,如已经无法正常开启原电脑(无法进行手动备份)则可将 原电脑硬盘连接到其他电脑中,找到“备份路径一”所指向的路径, 找到备份文件夹,将其中修改日期最近的备份文件拷贝出来用于数据 还原。 2、在安装收费/水控系统时建议不要将安装目录选在C盘,避免因格式 化的操作是备份数据丢失,如果已经将软件安装在C盘,则建议将备 份文件路径指定为其他盘。 数据还原 数据还原,首先要找到备份的数据文件。如上所述,备份文件存放在E:\软件\ICSF5.74\Mdbbak上,根据路径找到Mdbbak文件夹并打开。 打开Mdbbak文件夹后,里面有类似这样的(1-4)BAK文件。 找寻最新的BAK文件,并把它与软件安装包(光盘)中IC挂接数据库.exe软件拷贝到电脑任意一个目录(文件夹)中,然后将备份文件重命名(光标放在备份文件 上点鼠标右键,选择重命名),改为ICSF.db。如图:(1-5)

数据库备份与恢复

Oracle数据库备份与恢复的三种方法 2009-11-04 16:00 Oracle数据库有三种标准的备份方法,它们分别是导出/导入(EXP/IMP)、热备份和冷备份。导出备件是一种逻辑备份,冷备份和热备份是物理备份。 一、导出/导入(Export/Import) 利用Export可将数据从数据库中提取出来,利用Import则可将提取出来的数据送回到Oracle数据库中去。 1、简单导出数据(Export)和导入数据(Import) Oracle支持三种方式类型的输出: (1)、表方式(T方式),将指定表的数据导出。 (2)、用户方式(U方式),将指定用户的所有对象及数据导出。 (3)、全库方式(Full方式),瘵数据库中的所有对象导出。 数据导入(Import)的过程是数据导出(Export)的逆过程,分别将数据文件导入数据库和将数据库数据导出到数据文件。 2、增量导出/导入 增量导出是一种常用的数据备份方法,它只能对整个数据库来实施,并且必须作为SYSTEM来导出。在进行此种导出时,系统不要求回答任何问题。导出文件名缺省为export.dmp,如果不希望自己的输出文件定名为export.dmp,必须在命令行中指出要用的文件名。 增量导出包括三种类型: (1)、“完全”增量导出(Complete) 即备份三个数据库,比如: (2)、“增量型”增量导出 备份上一次备份后改变的数据,比如:

(3)、“累积型”增量导出 累计型导出方式是导出自上次“完全”导出之后数据库中变化了的信息。比如: 数据库管理员可以排定一个备份日程表,用数据导出的三个不同方式合理高效的完成。 比如数据库的被封任务可以做如下安排: 星期一:完全备份(A) 星期二:增量导出(B) 星期三:增量导出(C) 星期四:增量导出(D) 星期五:累计导出(E) 星期六:增量导出(F) 星期日:增量导出(G) 如果在星期日,数据库遭到意外破坏,数据库管理员可按一下步骤来回复数据库: 第一步:用命令CREATE DATABASE重新生成数据库结构; 第二步:创建一个足够大的附加回滚。 第三步:完全增量导入A: 第四步:累计增量导入E: 第五步:最近增量导入F:

王珊《数据库系统概论》课后习题(数据库恢复技术)【圣才出品】

第10章数据库恢复技术 1.试述事务的概念及事务的四个特性。恢复技术能保证事务的哪些特性? 答:(1)事务是用户定义的一个数据库操作序列,是一个不可分割的工作单位。事务具有4个特性:原子性、一致性、隔离性和持续性。这4个特性也简称为ACID特性。 ①原子性:事务是数据库的逻辑工作单位,事务中的操作要么都做,要么都不做。 ②一致性:事务执行的结果必须是使数据库从一个一致性状态变到另一个一致性状态。当数据库只包含成功事务提交的结果时,就说数据库处于一致性状态。 ③隔离性:一个事务的执行不能被其他事务干扰,即一个事务内部的操作及使用的数据对其他并发事务是隔离的,并发执行的各个事务之间不能互相干扰。 ④持续性:持续性指一个事务一旦提交,它对数据库中数据的改变就应该是永久性的,接下来的其他操作或故障不应该对其执行结果有任何影响。 (2)恢复技术保证了事务的原子性、一致性和持续性。 2.为什么事务非正常结束时会影响数据库数据的正确性?请举例说明。 答:事务执行的结果必须是使数据库从一个一致性状态变到另一个一致性状态。如果数据库系统运行中发生故障,有些事务尚未完成就被迫中断,这些未完成事务对数据库所做的修改有一部分已写入物理数据库,这时数据库就处于一种不正确的状态,或者说是不一致的状态。 例如某工厂的库存管理系统中,要把数量为Q的某种零件从仓库1移到仓库2存放。则可以定义一个事务T,T包括两个操作:Q1=Q1-Q,Q2=Q2+Q。如果T非正常终止

时只做了第一个操作,则数据库就处于不一致性状态,库存量无缘无故少了Q。 3.数据库中为什么要有恢复子系统?它的功能是什么? 答:因为计算机系统中硬件的故障、软件的错误、操作员的失误以及恶意的破坏是不可避免的,这些故障轻则造成运行事务非正常中断,影响数据库中数据的正确性,重则破坏数据库,使数据库中全部或部分数据丢失。为保证数据一致性,需要清除这些事务对数据库的所有修改,因此必须要有恢复子系统。 恢复子系统的功能是把数据库从错误状态恢复到某一已知的正确状态,也称为一致状态或完整状态。 4.数据库运行中可能产生的故障有哪几类?哪些故障影响事务的正常执行?哪些故障破坏数据库数据? 答:数据库系统中可能发生各种各样的故障,大致可以分四类: 事务内部的故障,事务内部的故障是指事务没有达到预期的终点。 系统故障,系统故障是指造成系统停止运转的任何事件,使得系统要重新启动。 介质故障,是指外存故障,如磁盘损坏、磁头碰撞,瞬时强磁场干扰等。 计算机病毒,计算机病毒是指一种人为的故障或破坏。 事务故障、系统故障和介质故障影响事务的正常执行;介质故障和计算机病毒破坏数据库数据。 5.数据库恢复的基本技术有哪些? 答:数据库恢复的基本技术包括数据转储和登录日志文件。

第六章 数据库恢复技术

第六章数据库恢复技术 第六章数据库恢复技术 6.1 事务的基本概念 6.2 数据库恢复概述 6.3 故障的种类 6.4 恢复的实现技术 6.5 恢复策略 6.6 具有检查点的恢复技术 6.7 数据库镜像 6.8 小结 6.1 事务的基本概念 一、什么是事务 二、如何定义事务 三、事务的特性 一、什么是事务 ?事务(Transaction)是数据库的逻辑工作单位,是用户定义的一组操作序列。 ?事务和程序是两个概念 –在关系数据库中,一个事务可以是一条SQL语句,一组SQL语句或整个程序–一个应用程序通常包含多个事务 ?事务是恢复和并发控制的基本单位 二、如何定义事务 ?显式定义方式 BEGIN TRANSACTION BEGIN TRANSACTION SQL 语句1 SQL 语句1 SQL 语句2 SQL 语句2 。。。。。。。。。。 COMMIT ROLLBACK

?隐式方式 当用户没有显式地定义事务时, DBMS 按缺省规定自动划分事务 事务结束 COMMIT 事务正常结束 提交事务的所有操作(读+更新) 事务中所有对数据库的更新永久生效 ROLLBACK 事务异常终止 –事务运行的过程中发生了故障,不能继续执行 回滚事务的所有更新操作 –事务滚回到开始时的状态 三、事务的特性(ACID特性) 事务的ACID特性: ?原子性(Atomicity) ?一致性(Consistency) ?隔离性(Isolation) ?持续性(Durability ) 1. 原子性 ?事务是数据库的逻辑工作单位 –事务中包括的诸操作要么都做,要么都不做 2. 一致性 事务执行的结果必须是使数据库从一个 一致性状态变到另一个一致性状态。 一致性与原子性 银行转帐:从帐号A中取出一万元,存入帐号B。 –定义一个事务,该事务包括两个操作

数据库备份与恢复技术

Oracle数据库备份与恢复技术 Oracle是一个适合于大中型企业的数据库管理系统,它主要应用于:银行、电信、移动通信、航空、保险、金融、跨国公司、和电子商务等。备份与恢复是数据库管理中最重要的方面之一。如果数据库崩溃却没有办法恢复它,那么对企业造成的毁灭性结果可能会是数据丢失、收入减少、客户不满等。不管公司是使用单个数据库还是多个数据库来存储数百GB 或TB 的数据,它们都有一个共同点,即需要制订一个备份与恢复方案来备份重要数据并使自身免于灾难,将损失尽量降低到最小。 备份与恢复概述 备份是数据的一个代表性副本。该副本会包含数据库的重要部分,如控制文件、重做日志和数据文件。备份通过提供一种还原原始数据的方法保护数据不受应用程序错误的影响并防止数据的意外丢失。备份分为物理备份和逻辑备份。物理备份是物理数据库文件的副本。“备份与恢复”通常指将复制的文件从一个位置转移到另一个位置,同时对这些文件执行各种操作。 相比而言,逻辑备份包含使用SQL 命令导出并存储在二进制文件中的数据。Oracle 在重做日志缓冲区中记录提交的和未提交的更改。逻辑备份用于补充物理备份。还原物理备份意味着重建它并将其提供给Oracle 服务器。要恢复还原的备份,需要使用事务日志中的重做记录来更新数据。事务日志记录在执行备份之后对数据库所做的更改。 Oracle 在例程故障之后自动执行崩溃恢复和实例恢复。在出现介质故障的情况下,数据库管理员(DBA) 必须启动恢复操作。恢复备份涉及两种不同的操作:通过应用重做数据将备份前滚至一个较近的时间;将在未提交的事务中所做的所有更改回滚至其原来状态。一般而言,恢复指在还原、前滚和回滚备份中涉及的各种操作。备份与恢复指在防止数据库丢失数据和在丢失数据时重建数据库的过程中涉及的各种策略和操作。 备份与恢复操作 备份是数据文件、表空间或某个时间点的数据库等的快照。如果对数据库进行了周期性备份,则在数据丢失时用户可以将存储的重做信息应用到他们最新的备份中,从而恢复数据库的当前状态。Oracle 使用户能够还原一个较早的备份和仅应用某些重做数据,从而将数据库恢复到一个较早的时间点。这种恢复称为不完全介质恢复。如果备份是一致的,那么根本不需要用户应用任何重做数据。 下面用介质恢复的一个简单例子来解释一下这个概念。假定用户在中午为数据库作了一个备份。从中午开始,每一分钟对数据库进行一次更改。在下午 1 点时,一个磁盘驱动器出现故障,导致那个磁盘上的所有数据丢失。幸运的是,Oracle 在重做日志中记录了所有更改。则用户可以将中午的备份还原到一个正常运转的磁盘驱动器上,使用重做数据将数据库恢复到下午1 点,从而重建丢失的更改。 备份与恢复策略要素 尽管备份与恢复操作非常复杂并随因企业而异,但基本原则均遵循这四个简单的步骤:

(完整word版)数据库备份与恢复方案

数据库备份与恢复方案 随着计算机的普及和信息技术的进步,特别是计算机网络的飞速发展,信息安全的重要性日趋明显。数据备份是保证信息安全的一个重要方法。 只要发生数据传输、数据存储和数据交换,就有可能产生数据故障。这时,如果没有采取数据备份和数据恢复手段与措施,就会导致数据的丢失。有时造成的损失是无法弥补与估量的。 数据故障的形式是多种多样的。通常,数据故障可划分为系统故障、事务故障和介质故障三大类。从信息安全数据库备份与恢复方案的角度出,实际上第三方或敌方的“信息攻击”,也会产生不同种类的数据故障。例如:计算机病毒型、特洛伊木马型、“黑客”入侵型、逻辑炸弹型等。这些故障将会造成的后果有:数据丢失、数据被修改、增加无用数据及系统瘫痪等。作为系统管理员,要千方百计地维护系统和数据的完整性与准确性。通常采取的措施有:安装防火墙,防止“黑客”入侵;安装防病毒软件,采取存取控制措施;选用高可靠性的软件产品;增强计算机网络的安全性。 世界上没有万无一失的信息安全措施。信息世界“攻击和反攻击”也永无止境。对信息的攻击和防护好似矛与盾的关系,螺旋式地向前发展。 在信息的收集、处理、存储、传输和分发中经常会存在一些新的问题,

其中最值得我们关注的就是系统失效、数据丢失或遭到破坏。 威胁数据的安全,造成系统失效的主要原因有以下几个方面: 1、硬盘驱动器损坏; 2、人为错误; 3、黑客攻击; 4、病毒; 5、自然灾害; 6、电源浪涌; 7、磁干扰; 因此,数据备份与数据恢复是保护数据的最后手段,也是防止主动型信息攻击的最后一道防线。 SQL SERVER数据备份方案 SQL SERVER数据库的备份方法主要有完整备份,差异备份,事务日志备份等。根据数据安全性的要求,推荐的备份方式为每周一次完整备份,每天一次差异备份,每半个小时一次事务日志备份。 默认情况下,为sysadmin 固定服务器角色以及db_owner 和

第10章 数据库恢复技术(习题集)

第十章数据库恢复技术(习题集) 二、选择题 1、一个事务的执行,要么全部完成,要么全部不做,一个事务中对数据库的所有操作都是一个不可分割的操作序列的属性是(A)。 A. 原子性 B. 一致性 C. 独立性 D. 持久性 2、表示两个或多个事务可以同时运行而不互相影响的是(C)。 A. 原子性 B. 一致性 C. 独立性 D. 持久性 3、事务的持续性是指(B) A.事务中包括的所有操作要么都做,要么都不做。 B.事务一旦提交,对数据库的改变是永久的。 C.一个事务内部的操作对并发的其他事务是隔离的。 D.事务必须是使数据库从一个一致性状态变到另一个一致性状态。 4、SQL语言中的COMMIT语句的主要作用是(C)。 A. 结束程序 B. 返回系统 C. 提交事务 D. 存储数据 5、SQL语言中用(B )语句实现事务的回滚 A. CREATE TABLE B. ROLLBACK C. GRANT和REVOKE D. COMMIT 6、若系统在运行过程中,由于某种硬件故障,使存储在外存上的数据部分损失或全部损失,这种情况称为(A)。 A. 介质故障 B. 运行故障 C. 系统故障 D. 事务故障 7、在DBMS中实现事务持久性的子系统是(D)。 A. 安全管理子系统 B. 完整性管理子系统 C. 并发控制子系统 D. 恢复管理子系统 8、后援副本的作用是(C)。 A. 保障安全性 B. 一致性控制 C. 故障后的恢复 D. 数据的转储 9、事务日志用于保存(C)。 A. 程序运行过程 B. 程序的执行结果 C. 对数据的更新操作 D. 数据操作 10、数据库恢复的基础是利用转储的冗余数据。这些转储的冗余数据包括(C)。 A. 数据字典、应用程序、审计档案、数据库后备副本 B. 数据字典、应用程序、审计档案、日志文件 C. 日志文件、数据库后备副本 D. 数据字典、应用程序、数据库后备副本 11、数据恢复最常用的技术是(A )。 A.数据转储和登记日志文件 B.数据转储和备份

数据库恢复技术

第10 章数据库恢复技术 1.试述事务的概念及事务的4 个特性。 答: 事务是用户定义的一个数据库操作序列,这些操作要么全做要么全不做,是一个不可分割的工作单位。 事务具有4 个特性:原子性(Atomicity )、一致性(consistency )、隔离性( Isolation )和持续性(Durability )。这4 个特性也简称为ACID 特性。 原子性:事务是数据库的逻辑工作单位,事务中包括的诸操作要么都做,要么都不做。 一致性:事务执行的结果必须是使数据库从一个一致性状态变到另一个一致性状态。 隔离性:一个事务的执行不能被其他事务干扰。即一个事务内部的操作及使用的数据对其他并发事务是隔离的,并发执行的各个事务之间不能互相干扰。持续性:持续性也称永久性(Perfnanence ) ,指一个事务一旦提交,它对数据库中数据的改变就应该是永久性的。接下来的其他操作或故障不应该对其执行结果有任何影响。 2 .为什么事务非正常结束时会影响数据库数据的正确性,请列举一例说明之。 答: 事务执行的结果必须是使数据库从一个一致性状态变到另一个一致性状态。如果数据库系统运行中发生故障,有些事务尚未完成就被迫中断,这些未完成事务对数据库所做的修改有一部分已写入物理数据库,这时数据库就处于一种不正确的状态,或者说是不一致的状态。例如某工厂的库存管理系统中,要把数量为Q 的某种零件从仓库1 移到仓库2 存放。则可以定义一个事务T , T 包括两个操作;Ql = Ql 一Q , Q2= Q2 + Q。如果T 非正常终止时只做了第一个操作,则数据库就处于不一致性状态,库存量无缘无故少了Q 。 3 .数据库中为什么要有恢复子系统?它的功能是什么? 答: 因为计算机系统中硬件的故障、软件的错误、操作员的失误以及恶意的破坏是不可避免的,这些故障轻则造成运行事务非正常中断,影响数据库中数据的正确性,重则破坏数据库,使数据库中全部或部分数据丢失,因此必须要有恢复子系统。 恢复子系统的功能是:把数据库从错误状态恢复到某一已知的正确状态(亦称为一致状态或完整状态)。 4 .数据库运行中可能产生的故障有哪几类?哪些故障影响事务的正常执行?哪些故障破坏数据库数据? 答: 数据库系统中可能发生各种各样的故障,大致可以分以下几类: (1 )事务内部的故障; (2 )系统故障; (3 )介质故障; (4 )计算机病毒。 事务故障、系统故障和介质故障影响事务的正常执行;介质故障和计算机病毒破坏数据库数据。 5 .数据库恢复的基本技术有哪些? 答: 数据转储和登录日志文件是数据库恢复的基本技术。 当系统运行过程中发生故障,利用转储的数据库后备副本和日志文件就可以将数据库恢复到故障前的某个一致性状态。

SQL数据库备份与恢复操作流程

1.数据库备份 1)打开“开始”——“程序”——Microsoft SQL Server——企业管理器,进入之后,将页面左边的“控制台根目录”下的“+”一个一个都点开,一直到点开“数据库”前的“+”。可以看到第一个数据库应该是CORPSCAN,在这个数据库上面点右键,选择“所有任务”中的“备份数据库”,如下图所示: 2)在弹出的选择框中点“添加”按钮:

3)弹出如下的窗口: 且必须给这个备份文件起一个文件名(一般我们都以日期做为备份文件名),如

下图所示: 上述备份文件就是放在D:\ 这个目录下,文件名为20051120。然后点“确定”。4)可以看到“备份到”那里有个路径和文件名了,其它什么都不用动,然后点“确定”就可以了,如下图所示: 备份文件成功后会有提示信息,可以到备份的目录下找到备份的文件。

2.数据库还原 和数据库的备份操作类似。具体流程如下: 1)打开“开始”——“程序”——Microsoft SQL Server——企业管理器,进入之后,将页面左边的“控制台根目录”下的“+”一个一个都点开,一直到点开“数据库”前的“+”。可以看到第一个数据库应该是CORPSCAN,在这个数据库上面点右键,选择“所有任务”中的“还原数据库”,如下图所示: 2)在弹出的页面上,在“还原”那里选择“从设备”,然后点一下“选择设备”,如图所示:

3)在弹出的页面上点一下“添加”按钮,就出现“选择还原目的”的对话框,在“文件名”后面有个浏览按钮,在那里选择要还原的文件(就是之前备份的数据库文件),然后点“确定”,再确定,再确定,就可以了,还原成功之后会有提示的:

数据库恢复技术

第 7 章数据库恢复技术 1. ________ 是一系列的数据库操作,是数据库应用程序的基本逻辑单元。 2. 事务处理技术主要包括 ________ 技术和 ________ 技术。 3. 在SQL语言中,定义事务控制的语句主要有 ________. ________ 和 ________ 。 4. 事务具有四个特性:它们是 ________. ________. ________ 和 ________ 。这个 四个特性也简称为 ________ 特性。 5. 把数据库从错误状态恢复到某一已知的正确状态(亦称为一致状态)的功能,这就是 ________ 。 6. 数据库系统中可能发生各种各样的故障,大致可以分为 ________. ________. ________ 和 ________ 等。 7. 建立冗余数据最常用的技术是 ________ 和 ________ 。通常在一个数据库系统中,这 两种方法是一起使用的。 8. 转储可分为 ________ 和 ________ ,转储方式可以有 ________ 和 ________ 。 9. ________ 是用来记录事务对数据库的更新操作的文件。主要有两种格式:以 ________ 为 单位的日志文件和以 ________ 为单位的日志文件。 10. 试述事务的概念及事务的四个特性。 11. 为什么事务非正常结束时会影响数据库数据的正确性,请列举一例说明之。 12. 数据库中为什么要有恢复子系统?它的功能是什么? 13. 数据库运行中可能产生的故障有哪几类?哪些故障影响事务的正常执行?哪些故障破 坏数据库数据? 14. 数据库恢复的基本技术有哪些? 15. 数据库转储的意义是什么?试比较各种数据转储方法。 16. 什么是日志文件?为什么要设立日志文件? 17. 登记日志文件时为什么必须先写日志文件,后写数据库? 18. 针对不同的故障,试给出恢复的策略和方法。(即如何进行事务故障的恢复?系统故障 的恢复?介质故障恢复?) 19. 什么是检查点记录,检查点记录包括哪些内容? 20. 具有检查点的恢复技术有什么优点?试举一个具体的例子加以说明。 21. 试述使用检查点方法进行恢复的步骤。 22. 什么是数据库镜像?它有什么用途? 答案 1. 事务 2. 数据库恢复并发控制 3. BEGIN TRANSACTION COMMIT ROLLBACK 4. 原子性(Atomicity)一致性(Consistency)隔离性(Isolation)持续性(Durability)ACID 5. 数据库的恢复 6. 事务故障系统故障介质故障计算机病毒 7. 数据转储登录日志文件 8. 静态转储动态转储海量转储增量转储 9. 日志文件记录数据块

第10章数据库恢复技术(习题集)

第10章数据库恢复技术 (习题集) -标准化文件发布号:(9456-EUATWK-MWUB-WUNN-INNUL-DDQTY-KII

第十章数据库恢复技术(习题集) 二、选择题 1、一个事务的执行,要么全部完成,要么全部不做,一个事务中对数据库的所有操作都是一个不可分割的操作序列的属性是(A)。 A. 原子性 B. 一致性 C. 独立性 D. 持久性 2、表示两个或多个事务可以同时运行而不互相影响的是(C)。 A. 原子性 B. 一致性 C. 独立性 D. 持久性 3、事务的持续性是指(B) A.事务中包括的所有操作要么都做,要么都不做。 B.事务一旦提交,对数据库的改变是永久的。 C.一个事务内部的操作对并发的其他事务是隔离的。 D.事务必须是使数据库从一个一致性状态变到另一个一致性状态。 4、SQL语言中的COMMIT语句的主要作用是( C)。 A. 结束程序 B. 返回系统 C. 提交事务 D. 存储数据 5、SQL语言中用(B )语句实现事务的回滚 A. CREATE TABLE B. ROLLBACK C. GRANT和REVOKE D. COMMIT 6、若系统在运行过程中,由于某种硬件故障,使存储在外存上的数据部分损失或全部损失,这种情况称为(A)。 A. 介质故障 B. 运行故障 C. 系统故障 D. 事务故障 7、在DBMS中实现事务持久性的子系统是( D)。 A. 安全管理子系统 B. 完整性管理子系统 C. 并发控制子系统 D. 恢复管理子系统 8、后援副本的作用是(C)。 A. 保障安全性 B. 一致性控制 C. 故障后的恢复 D. 数据的转储 9、事务日志用于保存( C)。 A. 程序运行过程 B. 程序的执行结果 C. 对数据的更新操作 D. 数据操作 10、数据库恢复的基础是利用转储的冗余数据。这些转储的冗余数据包括(C)。 A. 数据字典、应用程序、审计档案、数据库后备副本 B. 数据字典、应用程序、审计档案、日志文件 C. 日志文件、数据库后备副本 D. 数据字典、应用程序、数据库后备副本 11、数据恢复最常用的技术是( A )。

数据库的创建、备份与恢复

北京建筑大学 理学院信息与计算科学专业实验报告 课程名称数据库原理及应用实验名称数据库的创建、备份与恢复实验地点 姓名班级学号日期指导教师成绩 1、巩固数据库的基础知识。 2、掌握使用SQL Server2000企业管理器和T_SQL语句两种方法创建数据库。 3、掌握使用SQL Server2000企业管理器和T_SQL语句两种方法查看、修改数据库属性。 4、掌握使用SQL Server2000企业管理器和T_SQL语句两种方法更改与删除数据库。 5、掌握使用SQL Server2000企业管理器备份和还原数据库。 【实验要求】 使学生能够巩固数据库的基础知识,掌握使用SQL Server2000企业管理器和T_SQL语句两种方法创建数据库、查看和修改数据库的属性、更改与删除数据库,并且能使用SQL Server2000企业管理器备份和还原数据库。 【实验环境】 1、操作系统:WinXp Professional 2、数据库:SQL Server 2000个人版 【实验内容】 1、在D盘根目录下建立两个文件夹sql-data和sql-log。打开查询分析器,注意选择所连接的SQL SERVER 为你自己的机器,连接使用“windows身份验证”。用create database语句按以下要求在本地SQL SERVER 下建立数据库。 数据库文件名称为:PPLQ 主数据文件逻辑名称为:PPLQ_DA TA 主数据文件物理名称为:“D:\sql-data\PPLQ_DA TA.mdf” 初始大小为:2MB 最大尺寸为:不受限制 文件自动增长速度为:10% 辅数据文件逻辑名称为:PPLQ_DA TA2 辅数据文件物理名称为:“D:\sql-data\PPLQ_DA TA2.ndf” 初始大小为:3MB 最大尺寸为:200MB 文件自动增长速度为:10MB 事务日志文件逻辑名称为:PPLQ_LOG 事务日志文件物理名称为:“D:\sql-log\PPLQ_LOG.ldf” 初始大小为:1MB 最大尺寸为:20MB 文件自动增长速度为:2MB 调试运行成功后,在企业管理中找到所建立的数据库,打开属性窗口,观察所建数据库的属性是否和以上要求一致。

ORACLE数据库备份与恢复详解

ORACLE数据库备份与恢复详解 Oracle的备份与恢复有三种标准的模式,大致分为两大类,备份恢复(物理上的)以及导入导出(逻辑上的),而备份恢复又可以根据数据库的工作模式分为非归档模式(Nonarchivelog-style)和归档模式(Archivelog-style),通常,我们把非归档模式称为冷备份,而相应的把归档模式称为热备份,他们的关系如下所示 三种方式各有优点,我们做个比较(这个是用Fireworks画的,有点糙):

$A: 现在先来介绍一下逻辑备份方式的方法,利用Export可将数据从数据库中提取出来,利用Import则可将提取出来的数据送回到Oracle数据库中去。理论基础:Oracle 提供的Export和Import具有三种不同的操作方式(就是备份的数据输出(入)类型): 1,表方式(T) 可以将指定的表导出备份; 2,全库方式(Full) 将数据库中的所有对象导出; 3,用户方式(U) 可以将指定的用户相应的所有数据对象导出; *在导入导出备份方式中,提供了很强大的一种方法,就是增量导出/导入,但是它必须作为System来完成增量的导入导出,而且只能是对整个数据库进行实施。增量导出又可以分为三种类别: 1,完全增量导出(完全备份)(Complete Export) 这种方式将把整个数据库文件导出备份;exp system/manager inctype=complete file=20041125.dmp(为了方便检索和事后的查询,通常我们将备份文件以日期或者其他有明确含义的字符命名) 2,增量型增量导出(增量备份)(Incremental Export) 这种方式将只会备份上一次备份后改变的结果;exp system/manager inctype=incremental file=20041125.dmp 3,累积型增量导出(差异备份)(Cumulate Export) 这种方式的话,是导出自上次完全增量导出后数据库变化的信息。exp system/manager inctype=cumulative file=20041125.dmp 通常情况下,DBA们所要做的,就是按照企业指定或者是自己习惯的标准(如果是自己指定的标准,建议写好计划说明),一般,我们采用普遍认可的下面的方式进行每天的增量备份: Mon:完全备份(A) Tue:增量导出(B) Wed:增量导出(C) Thu:增量导出(D)

数据库的备份与恢复-模板

数据库的备份与恢复 ---- 当我们使用一个数据库时,总希望数据库的内容是可靠的、正确的,但由于计算机系统的故障(包括机器故障、介质故障、误操作等),数据库有时也可能遭到破坏,这时如何尽快恢复数据就成为当务之急。如果平时对数据库做了备份,那么此时恢复数据就显得很容易。由此可见,做好数据库的备份是多么的重要,下面笔者就以ORACLE7为例,来讲述一下数据库的备份和恢复。ORACLE 数据库有三种标准的备份方法,它们分别为导出/导入(EXPORT/IMPORT)、冷备份、热备份。导出备份是一种逻辑备份,冷备份和热备份是物理备份。 ---- 一、导出/导入(Export/Import) ---- 利用Export可将数据从数据库中提取出来,利用Import则可将提取出来的数据送回Oracle数据库中去。 ---- 1. 简单导出数据(Export)和导入数据(Import) ---- Oracle支持三种类型的输出: ---- (1)表方式(T方式),将指定表的数据导出。 ---- (2)用户方式(U方式),将指定用户的所有对象及数据导出。 ---- (3)全库方式(Full方式),将数据库中的所有对象导出。 ---- 数据导出(Import)的过程是数据导入(Export)的逆过程,它们的数据流向不同。 ---- 2. 增量导出/导入 ---- 增量导出是一种常用的数据备份方法,它只能对整个数据库来实施,并且必须作为SYSTEM来导出。在进行此种导出时,系统不要求回答任何问题。导出文件名缺省为,如果不希望自己的输出文件定名为,必须在命令行中指出要用的文件名。 ---- 增量导出包括三个类型: ---- (1)“完全”增量导出(Complete)

数据库的恢复 习题答案

第七章数据库的恢复 习题解答和解析 1. 1.试述事务的概念及事务的4个特性。 答:事务是用户定义的一个数据库操作序列,这些操作要么全做要么全不做,是一个不可分割的工作单 位。事务具有4个特性:原子性(Atomicity)、一致性(Consistency )、隔离性(Isolation)和持续性(Durability)。这4个特性也简称为ACID特性。 ??原子性:事务是数据库的逻辑工作单位,事务中包括的诸操作要么都做,要么 都不做。 ??一致性:事务执行的结果必须是使数据库从一个一致性状态变到另一个一致 性状态。 ??隔离性:一个事务的执行不能被其他事务干扰。即一个事务内部的操作及使 用的数据对其他并发事务是隔离的,并发执行的各个事务之间不能互相干扰。 ??持续性:持续性也称永久性(Permanence),指一个事务一旦提交,它对数据库 中数据的改变就应该是永久性的。接下来的其他操作或故障不应该对其执行结果有 任何影响。 2.为什么事务非正常结束时会影响数据库数据的正确性,请列举一例说明之。 答:事务执行的结果必须是使数据库从一个一致性状态变到另一个一致性状态。如果数据库系统运行中发生故障,有些事务尚未完成就被迫中断,这些未完成事务对数据库所做的修改有一部分已写入物理数据库,这时数据库就处于一种不正确的状态,或者说是不一致的状态。 例如某工厂的库存管理系统中,要把数量为Q的某种零件从仓库1移到仓库2存放。 则可以定义一个事务T,T包括两个操作;Q1=Ql-Q,Q2=Q2+Q。如果T非正常终止时只做了第一个操作,则数据库就处于不一致性状态,库存量无缘无故少了Q。 3.数据库中为什么要有恢复子系统?它的功能是什么? 答:因为计算机系统中硬件的故障、软件的错误、操作员的失误以及恶意的破坏是不可避免的,这些故障轻则造成运行事务非正常中断,影响数据库中数据的正确性,重则破坏数据库,使数据库中全部或部分数据丢失,因此必须要有恢复子系统。 恢复子系统的功能是:把数据库从错误状态恢复到某一已知的正确状态(亦 称为一致状态或完整状态)。 4.数据库运行中可能产生的故障有哪几类?哪些故障影响事务的正常执行?哪些故障 破坏数据库数据? 答:数据库系统中可能发生各种各样的故障,大致可以分以下几类: (1)事务内部的故障; (2)系统故障; (3)介质故障; (4)计算机病毒。 事务故障、系统故障和介质故障影响事务的正常执行;介质故障和计算机病毒破坏数据库数据。 5.数据库恢复的基本技术有哪些? 答:数据转储和登录日志文件是数据库恢复的基本技术。当系统运行过程中发生故障,

oracle数据库备份与恢复的三种方法(1)

Oracle数据库有三种标准的备份方法,它们分别是导出/导入(EXP/IMP)、热备份和冷备份。导出备件是一种逻辑备份,冷备份和热备份是物理备份。 一、导出/导入(Export/Import) 利用Export可将数据从数据库中提取出来,利用Import则可将提取出来的数据送回到Oracle数据库中去。 1、简单导出数据(Export)和导入数据(Import) Oracle支持三种方式类型的输出: (1)、表方式(T方式),将指定表的数据导出。 (2)、用户方式(U方式),将指定用户的所有对象及数据导出。 (3)、全库方式(Full方式),瘵数据库中的所有对象导出。 数据导入(Import)的过程是数据导出(Export)的逆过程,分别将数据文件导入数据库和将数据库数据导出到数据文件。 2、增量导出/导入 增量导出是一种常用的数据备份方法,它只能对整个数据库来实施,并且必须作为SYSTEM来导出。在进行此种导出时,系统不要求回答任何问题。导出文件名缺省为export.dmp,如果不希望自己的输出文件定名为export.dmp,必须在命令行中指出要用的文件名。 增量导出包括三种类型: (1)、“完全”增量导出(Complete) 即备份三个数据库,比如: (2)、“增量型”增量导出 备份上一次备份后改变的数据,比如: (3)、“累积型”增量导出 累计型导出方式是导出自上次“完全”导出之后数据库中变化了的信息。比如: 数据库管理员可以排定一个备份日程表,用数据导出的三个不同方式合理高效的完成。 比如数据库的被封任务可以做如下安排: 星期一:完全备份(A)

星期二:增量导出(B) 星期三:增量导出(C) 星期四:增量导出(D) 星期五:累计导出(E) 星期六:增量导出(F) 星期日:增量导出(G) 如果在星期日,数据库遭到意外破坏,数据库管理员可按一下步骤来回复数据库: 第一步:用命令CREATE DATABASE重新生成数据库结构; 第二步:创建一个足够大的附加回滚。 第三步:完全增量导入A: 第四步:累计增量导入E: 第五步:最近增量导入F: 二、冷备份 冷备份发生在数据库已经正常关闭的情况下,当正常关闭时会提供给我们一个完整的数据库。冷备份时将关键性文件拷贝到另外的位置的一种说法。对于备份Oracle信息而言,冷备份时最快和最安全的方法。冷备份的优点是: 1、是非常快速的备份方法(只需拷文件) 2、容易归档(简单拷贝即可) 3、容易恢复到某个时间点上(只需将文件再拷贝回去) 4、能与归档方法相结合,做数据库“最佳状态”的恢复。 5、低度维护,高度安全。 但冷备份也有如下不足: 1、单独使用时,只能提供到“某一时间点上”的恢复。 2、再实施备份的全过程中,数据库必须要作备份而不能作其他工作。也就是说,在冷备份过程中,数据库必须是关闭状态。

12.系统和数据库备份、恢复策略

系统、数据库备份和恢复策略 一、各数据库备份策略 目前应用服务器采用Oracle RAC数据库,应用服务器采用双机备份,主备机数据库通过磁阵共享信息。 备份采用两种方式: 1.配置信息备份 数据库定时调用备份程序,备份当前配置信息,通过oracle定时任务,每间隔一周备份一次,具体时间可设置,默认7天,保留最近5次备份。 2.数据信息备份 在数据库服务器上提供了备份脚本,/home/oracle/backup/strbackup.sh、 /home/oracle/backup/databackup.sh,通过linux计划任务,每周一凌晨备份一次,具体

时间可设置,默认7天,保留最近20次备份。 备份文件目录为/home/oracle/backup,备份完成后生成压缩文件形如 bts_com_str20160111.zip,包含:备份文件bts_com_str20160111.dmp、备份日志 bts_com_str20160111.log bts_com_data20160111.zip,包含:备份文件bts_com_data20160111.dmp、备份日志bts_com_data20160111.log 二、备份恢复 数据库恢复可恢复到前一次备份时的内容。 应急恢复流程 数据库关闭 su - oracle sqlplus / as sysdba shutdown immediate 数据库启动 su - oracle lsnrctl start sqlplus / as sysdba startup exit 数据库恢复 1、在备用数据库建立用户并赋予权限 2、使用imp命令导入基础数据结构包bts_com_str.dmp 3、导入配置信息bts_com_data.dmp 4、导入最近一次备份的全量信息bts_com_alarm.dmp 上述三步命令见附件expimp.txt 5、检查存储过程和序列情况

相关文档
相关文档 最新文档