版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、新世纪高职高专教材编审委员会 组编*Oracle数据库应用技术项目化教程任务9 图书管理系统的数据备份与恢复 预备知识预备知识任务任务9 9.1 .1 使用使用RmanRman备份图书管理系统的数据备份图书管理系统的数据任务任务9 9.2 .2 使用使用RMANRMAN恢复图书销售管理数据库恢复图书销售管理数据库任务任务9 9.3 .3 使用使用OracleOracle数据库的闪回功能数据库的闪回功能任务实任务实训训 学生学生管理系统的数据备份、恢复与闪回管理系统的数据备份、恢复与闪回Oracle数据库应用技术项目化教程1.备份与恢复的概念2.使用Rman备份Oracle数据库3.使用Rman
2、恢复 Oracle数据库4.Oracle数据库闪回技术的应用任务任务9 9图书管理系统的数据备份与恢复学习重点与难点Oracle数据库应用技术项目化教程1.了解Oracle数据库系统的备份与恢复知识2.掌握Oracle数据库具体备份与恢复方法3.掌握Oracle数据库的闪回技术4.学会使用Rman实现数据的备份与恢复任务任务9 9图书管理系统的数据备份与恢复学习目标Oracle数据库应用技术项目化教程知识点知识点1 1 数据库备份和恢复数据库备份和恢复任务任务9 9图书管理系统的数据备份与恢复知识点知识点2 Rman2 Rman工具的使用工具的使用知识点知识点3 Oracle3 Oracle数
3、据库的闪回技术数据库的闪回技术返回返回Oracle数据库应用技术项目化教程任务任务9 9图书销售管理系统的数据备份与恢复1 1数据库备份概念数据库备份概念 数据库备份是将数据库中的数据进行导出成为副本,该副本包括数据库所有重要的组成部分,如控制文件、数据文件、日志文件等。当数据库因意外事故而无法正常运行时,就可以使用该备份对数据进行恢复,将意外损失降低到最小。2 2数据库备份的分类数据库备份的分类 为了最大限度地对数据进行恢复,保证数据库安全运行,应选择最合理的备份方法来防止用户数据的丢失。对于Oracle数据库而言,备份方式包括物理备份和逻辑备份。(1)物理备份物理备份是指将实际组成数据库的
4、操作系统文件从一处拷贝到另一处的备份过程,通常是从磁盘到磁带。使用RMAN备份Oracle数据库,包括以下三种备份方式。 完全备份(Full Backup)与增量备份(Incremental Backup打开备份(Open Backup)或关闭备份(Closed Backup)一致备份(Consistent Backup)与不一致备份(Inconsistent Backup)(2)逻辑备份利用SQL语言从数据库中抽取数据并存于二进制文件的过程。这种方法包括读取一系列的数据库日志,并写入文件中,这些日志的读取与其所处位置无关。知识点1Oracle数据库应用技术项目化教程3 3数据库恢复数据库恢复
5、 数据库恢复,就是由于当前数据库存在风险或测试需要,利用有效的备份数据把数据库的当前状态还原成过去某个时刻的安全状态,或者把数据库有存在故障的状态转变为无故障状态的过程。由于数据库出现的故障主要包括市里故障和存储介质故障,因此对数据库的恢复也分为实例恢复和介质恢复。(1)实例恢复在数据库实例的运行期间,如果出现实例故障,由于Oracle实例不能正常关闭,而且当实例发生故障时,服务器可能正在管理对数据库信息进行处理的事务。在这种情况下,数据库来不及执行一个数据库检查点,以保存内存缓冲区中的数据到数据文件,这会造成数据文件中数据的不一致性。 实例恢复的目的就是恢复在内存缓冲区中因实例故障,而未保存
6、到数据文件中的数据。实例恢复只需要联机日志文件,不需要归档日志文件。实例恢复的最大特点是Oracle系统在下次启动数据库时,会自动使用日志文件进行数据的恢复,而无需用户的参与。(2)介质恢复 介质恢复主要用于发生存储介质故障时进行恢复,即对被破坏的数据文件和控制文件进行恢复。根据数据库恢复后的运行状态不同,介质恢复方法分为完全数据会和不完全数据恢复,至于完全数据恢复和不完全数据恢复的具体内容我们会在下面Rman工具介绍中会进行具体阐述。任务任务9 9图书销售管理系统的数据备份与恢复知识点1Oracle数据库应用技术项目化教程1Rman工具及其特点工具及其特点(1)Rman工具简介Recover
7、y Manager简称为RMAN,中文含义是恢复管理器,是ORACLE提供的DBA工具,用于管理备份和恢复操作。RMAN只能用于ORACLE 8或更高的版本中。它能够备份整个数据库或数据库部件,其中包括表空间、数据文件,控制文件和归档文件。RMAN可以按要求存取和执行备份和恢复。(2)RMAN的特点与传统的备份与恢复方式相比,RMAN主要具有以下特点: 跳过未使用的数据块当备份一个RMAN备份集时,RMAN不会备份从未被写入的数据块。而传统的备份方法无法知道已经使用了那些数据块。任务任务9 9图书销售管理系统的数据备份与恢复知识点2Oracle数据库应用技术项目化教程备份压缩RMAN使用的是一
8、种特有的二进制压缩模式来备份设备上的空间,以一种不同于传统备份方法中使用的压缩技术的压缩算法,RMAN使用的压缩算法是定制的,能够最大程度地压缩数据块中的一些典型的数据。执行增量备份使用增量备份每次备份只需备份上次备份以来变化的数据块即可,可以节省大量的存储空间、备份时间和系统资源等。块级别的恢复RMAN块级别恢复,只需要还原或修复标识为损坏的少量数据块。在RMAN修复损坏的数据块时,表空间的其他部分以及表空间中的对象仍可以联机。任务任务9 9图书销售管理系统的数据备份与恢复知识点2Oracle数据库应用技术项目化教程2RMAN组件组件RMAN是一个以客户端方式运行的备份与恢复工具,RMAN中
9、常用的组件如下:(1)RMAN命令执行器(RMAN Executable)用来对RMAN应用程序进行访问,允许DBA输入执行备份和恢复操作的命令,通过命令行或者图形界面与RMAN进行交互。(2)目标数据库(Target Database)目标数据库是指要执行备份、转储和恢复操作的数据库。RMAN使用目标数据库的控制文件来收集关于数据库的相关信息,并存储相关的RMAN操作信息。此外,实际的备份、修复以及恢复操作也是由目标数据库的进程来执行的。(3)RMAN恢复目录(RMAN Recover Catalog)恢复目录是RMAN在数据库基础上建立的一种存储对象,由RMAN自动维护。用来存储执行备份和
10、恢复操作时RMAN从目标数据库控制文件中获取的信息,如数据库结构、归档日志与数据文件信息等。任务任务9 9图书销售管理系统的数据备份与恢复知识点2Oracle数据库应用技术项目化教程(4)RMAN资料档案库(RMAN Repository)使用RMAN执行相应操作时,要使用到的管理信息和数据称为RMAN资料档案库。资料档案库包括备份集、备份段、镜像副本、目标数据库结构和配置设置。(5)恢复目录数据库(Recover Catalog Database)用来保存RMAN恢复目录的数据库,它是一个独立于目标数据库的Oracle数据库。3RMAN设置与操作设置与操作在使用RMAN进行备份和恢复操作之前
11、,首先应该对RMAN进行一些必需的设置与操作,例如为RMAN创建恢复目录、将RMAN连接到目标数据库以及对RMAN进行相应的参数设置。另外还需要了解RMAN中常见的操作命令等。(1)创建恢复目录恢复目录是由RMAN使用和维护,用来存储备份信息的一种存储对象。创建恢复目录的具体步骤如下。任务任务9 9图书销售管理系统的数据备份与恢复知识点2Oracle数据库应用技术项目化教程首先确定数据库处于归档模式,操作如下:首先确定数据库处于归档模式,操作如下:SQL CONNECT sys/admin AS SYSDBA;已连接。SQL ARCHIVE LOG LIST;数据库日志模式 非存档模式自动存档
12、 禁用存档终点 USE_DB_RECOVERY_FILE_DEST最早的联机日志序列 178当前日志序列 180任务任务9 9图书销售管理系统的数据备份与恢复知识点2Oracle数据库应用技术项目化教程创建备份表空间(用来存储相关的备份数据)和创建备份表空间(用来存储相关的备份数据)和RMAN备份用户,然后对创建的备份用户,然后对创建的RMAN用户授予相关权限,权限中必须包括用户授予相关权限,权限中必须包括RECOVERY_CATALOG_OWNER,操作如下:,操作如下:SQL CREATE TABLESPACE recovery_tbs 2 DATAFILE E:myRmanrecover
13、y_tbs.dbf SIZE 10M 3 AUTOEXTEND ON NEXT 5M 4 EXTENT MANAGEMENT LOCAL;表空间已创建。SQL CREATE USER rman_admin IDENTIFIED BY rman_admin 2 DEFAULT TABLESPACE recovery_tbs;用户已创建。SQL GRANT CONNECT , RESOURCE , RECOVERY_CATALOG_OWNER TO rman_admin;授权成功。任务任务9 9图书销售管理系统的数据备份与恢复知识点2Oracle数据库应用技术项目化教程创建恢复目录。首先需要启动创
14、建恢复目录。首先需要启动RMANRMAN工具,并使用工具,并使用RMANRMAN用户登录,来创建恢复目录。具用户登录,来创建恢复目录。具体操作如下:体操作如下:C:RMAN恢复管理器: Release 11.1.0.7.0 - Production on 星期六 8月 3 09:25:34 2013Copyright (c) 1982, 2007, Oracle. All rights reserved.RMAN CONNECT CATALOG rman_admin/rman_admin ;连接到恢复目录数据库。RMAN CREATE CATALOG;恢复目录已创建注:如果想要删除恢复目录,可
15、以使用如下语句:DROP CATALOG ;图1-1 数据库设计步骤任务任务9 9图书销售管理系统的数据备份与恢复知识点2Oracle数据库应用技术项目化教程(2)连接到目标数据库)连接到目标数据库 连接到目标数据库是指建立RMAN与目标数据库之间的连接。在RMAN中,可以在无恢复目录和有恢复目录这两种情况下链接到目标数据库。无恢复目录无恢复目录使用RMAN TARGET语句C: RMAN TARGET/使用RMAN NOCATALOG语句C: RMAN NOCATALOG/使用RMAN TARGET NOCATALOG语句C: RMAN TARGET sys/admin NOCATALOG有
16、恢复目录有恢复目录 如果在如果在RMAN中创建了恢复目录,则可以使用中创建了恢复目录,则可以使用RMAN TARGET CATALOG 语句连接语句连接到目标数据库,操作如下:到目标数据库,操作如下:C:RMAN TARGET sys/admin CATALOG rman_admin/rman_admin恢复管理器: Release 11.1.0.7.0 - Production on 星期六 8月 3 09:32:12 2013Copyright (c) 1982, 2007, Oracle. All rights reserved.连接到目标数据库: ORCL (DBID=13424182
17、27)任务任务9 9图书销售管理系统的数据备份与恢复知识点2Oracle数据库应用技术项目化教程在在RMAN中有恢复目录的情况下,连接目标数据库后还需要对数据库进行注册。注册目标中有恢复目录的情况下,连接目标数据库后还需要对数据库进行注册。注册目标数据库时,需要使用数据库时,需要使用REGISTER命令,操作如下:命令,操作如下:RMAN REGISTER DATABASE;注册在恢复目录中的数据库正在启动全部恢复目录的 resync完成全部 resync任务任务9 9图书销售管理系统的数据备份与恢复知识点2Oracle数据库应用技术项目化教程 取消目标数据库的注册取消目标数据库的注册 到此为
18、止,到此为止,RMAN恢复目录与目标数据库已经连接成功。如果要取消目标数据库的注册恢复目录与目标数据库已经连接成功。如果要取消目标数据库的注册,可以使用,可以使用UNREGISTER命令或使用过程。此处使用命令实现,如下:命令或使用过程。此处使用命令实现,如下:RMAN UNREGISTER DATABASE;数据库名为 ORCL 且 DBID 为 1342418227是否确实要注销数据库 (输入 YES 或 NO)?y已从恢复目录中注销数据库根据提示,在输入yes后,Oracle将自动执行注销操作。(4)RMAN命令命令常用的RMAN命令如下9-1所示。命令 说明 在后指定的路径名处运行脚本
19、STARTUP 启用目标数据库RUN 运行“”和“”之间的一组RMAN语句。任务任务9 9图书销售管理系统的数据备份与恢复知识点2Oracle数据库应用技术项目化教程命令 说明SET 为RMAN会话过程设置配置信息SHOW 显示所有的或单个的RMAN配置SHUTDOWN 从RMAN关闭目标数据库。SQL 运行那些使用标准RMAN命令不能完成的SQL命令ADVISE FAILURE 显示针对所发现故障的修复选项BACKUP 执行带有或不带有归档重做日志的RMAN备份CATALOG 将有关文件副本和用户管理备份的信息添加到存储库CHANGE 改变RMAN存储库中的备份状态CONFIGURE 为RM
20、AN配置持久化参数CONVERT 为跨平台传送表空间或整个数据库而转换数据文件个数CREATE CATALOG 为一个或多个目标数据库创建包括RMAN元数据的存储库目录CROSSCHECK 对照磁盘或磁带上的实际文件,检查RMAN存储库中的备份记录DUPLICATE 使用目标数据库的备份来创建副本数据库任务任务9 9图书销售管理系统的数据备份与恢复知识点2Oracle数据库应用技术项目化教程命令 说明DELETE 删除备份文件或副本,并在目标数据库控制文件中将他们标识为 deleted FLASHBACK 执行FLASHBACK DATABASE(闪回数据库)操作LIST 显示在目标数据库控制
21、文件或者整个数据库执行完全的或不完全的 恢复RECOVER 对数据文件、表空间或者整个数据库执行完全的或不完全的恢复REGISTER DATABASE 在RMAN存储库中注册目标数据库REPAIR FAILURE 修复自动诊断存储库中记录的一个或多个障碍REPORT 对RMAN存储数据库进行详尽的分析RESTORE 通常在存储介质失效后,将文件从映像副本或备份集恢复到磁盘上TRANSPORTTABLESPACE 为一个或多个表空间的备份创建可移植的表空间集VALIDATE 检查备份集并报告它的数据是否发生变化任务任务9 9图书销售管理系统的数据备份与恢复知识点2Oracle数据库应用技术项目化
22、教程(5)设置)设置Rman为了简化数据库管理员的工作,可以维持Rman中的参数设置,也就是说,这些设置在Rman各会话之间都是有效的。通过SHOW ALL命令可以查看这些参数设置信息。根据应用程序的需要,可以对RMAN中的一些参数进行重新设置。保留策略设置自动保留和管理备份时,可以通过恢复窗口或冗余的方法来实现。使用冗余策略,RMAN将保留每个数据文件和日志文件的特定数量的备份副本。通过恢复窗口,RMAN将可以根据需要保留多个备份,以便将数据库切换到恢复窗口内的任何时间点。例如,设置恢复窗口为7天,RMAN将会维护足够的映像副本、增量备份和归档重做日志,从而保证以将数据库还原和恢复到最后7天
23、中的任何时间点。任务任务9 9图书销售管理系统的数据备份与恢复知识点2Oracle数据库应用技术项目化教程 默认情况下,RMAN使用冗余策略,并且备份副本个数为1个(即RETENTION POLICY TO REDUNDANCY1语句)。【示例9-1】将保留策略设置为使用恢复窗口的方法,并且设置恢复时间为7天:RMAN CONFIGURE RETENTION POLICY TO RECOVERY WINDOW OF 7 DAYS;新的 RMAN 配置参数:CONFIGURE RETENTION POLICY TO RECOVERY WINDOW OF 7 DAYS;已成功存储新的 RMAN 配
24、置参数正在启动全部恢复目录的 resync完成全部 resync任务任务9 9图书销售管理系统的数据备份与恢复知识点2Oracle数据库应用技术项目化教程设备类型 RMAN可以使用的通道设备包括磁盘(DISK)和磁带(SBT)。默认的通道设备类型(DEFAULT DEVICE TYPE)为DISK,并且为磁盘方式分配的通道个数是1(DEVICE TYPE DISK PARALLELISM 1)。【示例9-2】将通道设备类型修改为SBT,并为RMAN分配两个磁带通道:RMAN CONFIGURE DEFAULT DEVICE TYPE TO SBT;新的 RMAN 配置参数:CONFIGURE
25、DEFAULT DEVICE TYPE TO SBT_TAPE;已成功存储新的 RMAN 配置参数正在启动全部恢复目录的 resync完成全部 resync任务任务9 9图书销售管理系统的数据备份与恢复知识点2Oracle数据库应用技术项目化教程RMAN CONFIGURE DEVICE TYPE sbt PARALLELISM 2;新的 RMAN 配置参数:CONFIGURE DEVICE TYPE SBT_TAPE PARALLELISM 2 BACKUP TYPE TO BACKUPSET;已成功存储新的 RMAN 配置参数正在启动全部恢复目录的 resync完成全部 resync任务任
26、务9 9图书销售管理系统的数据备份与恢复知识点2Oracle数据库应用技术项目化教程控制文件自动备份默认情况下,控制文件不会自动进行备份(CONTROLFILE AUTOBACKUP OFF)。考虑到控制文件的重要性,以及备份控制文件只需要占用很少的磁盘空间,所以,可以设置控制文件为自动备份状态。【示例9-3】将控制文件的备份状态修改为自动备份:RMAN CONFIGURE CONTROLFILE AUTOBACKUP ON;新的 RMAN 配置参数:CONFIGURE CONTROLFILE AUTOBACKUP ON;已成功存储新的 RMAN 配置参数正在启动全部恢复目录的 resync完
27、成全部 resync任务任务9 9图书销售管理系统的数据备份与恢复知识点2Oracle数据库应用技术项目化教程4Rman备份与备份类型备份与备份类型 在使用RMAN进行备份时,可以进行的备份类型包括:完全备份(Full Backup)、增量备份(Incremental Backup)和镜像复制等。在实现备份时,可以使用BACKUP命令或COPYTO命令。(1)在进行RMAN备份时,可以使用BACKUP命令,该命令的语法如下: BACKUP FULL | INCREMENTAL LEVEL = n ( backup_type option ); 其中,FULL表示完全备份;INCREMENTAL
28、表示增量备份;LEVEL是增量备份的级别,取值为04(表示0、1、2、3、4级增量),0级增量备份相当于完全备份。backup_type是备份对象。BACKUP命令可以备份的对象包括以下几种。DATABASE:表示备份全部数据库,包括所有数据文件和控制文件。TABLESPACE:表示备份表空间,可以备份一个或多个指定的表空间。DATAFILE:表示备份数据文件。任务任务9 9图书销售管理系统的数据备份与恢复知识点2Oracle数据库应用技术项目化教程 ARCHIVELOG ALL :表示备份归档日志文件。CURRENT CONTROLFILE:表示备份控制文件。DATAFILECOPY TAG
29、 :表示使用COPY命令备份的数据文件。CONTROLFILECOPY:表示使用COPY命令备份的控制文件。BACKUPSET ALL :表示使用BACKUP命令备份的所有文件。option为可选项,主要参数如下:TAG:指定一个标记。FORMAT:表示文件存储格式。INCLUDE CURRENT CONTROLFILE:表示备份控制文件。FILESPERSET:表示每个备份集所包含的文件。CHANNEL:指定备份通道。任务任务9 9图书销售管理系统的数据备份与恢复知识点2Oracle数据库应用技术项目化教程DELETE ALL INPUT:备份结束后删除归档日志。MAXSETSIZE:指定备
30、份集的最大尺寸。SKIP OFFLINE | READONLY | INACCESSIBLE :可以选择的备份条件。其中FORMAT参数用于设置备份文件的存储格式,也可以表示为备份文件的存储目录。(2)完全备份 完全备份是指对数据库中使用过的所有数据块进行备份,当然,没有使用过的数据块是不做备份的。 在一个完全数据库备份中,将所有的数据库文件复制到闪回恢复区。(3)备份表空间在数据库中创建一个表空间后,或者在对表空间执行修改操作后,立即对这个表空间进行备份,可以在出现介质失效时缩短恢复表空间所话费的时间。任务任务9 9图书销售管理系统的数据备份与恢复知识点2Oracle数据库应用技术项目化教程
31、(4)增量备份)增量备份增量备份就是将那些与前一次备份相比发生变化的数据块复制到备份集中。 进行增量备份时,RMAN会读取整个数据文件,通过RMAN可以为单位的数据文件、表空间或者这个数据库进行增量备份。在RMAN中建立的增量备份可以具有不同的级别,每个级别都使用一个不小于0的整数来标识,也就是在BACKUP命令中使用LEVEL关键字指定的,例如LEVEL = 0表示备份级别为0,LEVEL = 1表示备份级别为1。增量备份通过两种方式来实现,如表9-2所示。方 式关 键 字默认说 明差异备份DIFFERENTIAL是将备份上一次进行的同级或者低级备份以来所有变化的数据块累积备份CUMULAT
32、IVE否将备份上次低级备份以来所有的数据任务任务9 9图书销售管理系统的数据备份与恢复知识点2Oracle数据库应用技术项目化教程(5) 镜像复制镜像复制 RMAN可以使用COPY命令创建数据文件的准确副本,即镜像副本(Image Copies)。通过COPY命令可以复制数据文件、归档重做日志文件和控制文件。COPY命令的基本语法如下:COPY FULL | INCREMENTAL LEVEL = 0 input_file TO location_name ;其中,input_file表示被备份的文件;location_name表示复制后的文件。5Rman数据恢复模式与命令数据恢复模式与命令
33、使用RMAN实现正确的备份后,如果数据库文件出现介质错误,可以使用RMAN,通过不同的恢复模式,将系统恢复到某个状态。任务任务9 9图书销售管理系统的数据备份与恢复知识点2Oracle数据库应用技术项目化教程(1)Rman数据恢复模式数据恢复模式 数据库非归档恢复 如果数据库是在非归档模式下运行,并且最近所进行的完全数据库备份有效,则可以在故障发生时进行数据库的非归档恢复。使用RMAN恢复数据库时,一般情况下需要进行修复和恢复两个过程。 修复数据库:指物理上文件的复制。RMAN将启动一个服务器进程,使用磁盘中的备份集或镜像副本,修复数据文件、控制文件以及归档重做日志文件。执行修复数据库时,需要
34、使用RESTORE命令。 恢复数据库:恢复数据库主要是指数据文件的介质恢复,即为修复或的数据文件应用联机或归档重做日志,从而将修复的数据库文件更新到当前时刻或指定时刻下的状态。执行恢复数据库时,需要使用RECOVER命令。 任务任务9 9图书销售管理系统的数据备份与恢复知识点2Oracle数据库应用技术项目化教程通过RMAN执行恢复时,只需要执行RESTORE命令,将数据库文件修复到正确的位置,然后就可以打开数据库。也就是说,在NOARCHIVELOG模式下的数据库,不需要执行RECOVER命令,因为这会导致恢复所有的数据库文件,即使只有一个数据文件不可用。数据库归档恢复与非归档模式的数据库恢
35、复相比,使用数据库归档模式恢复的基本特点是归档重做日志文件的内容将应用到数据文件上,在恢复过程中,RMAN会自动确定恢复数据库需要哪些归档重做日志文件。任务任务9 9图书销售管理系统的数据备份与恢复知识点2Oracle数据库应用技术项目化教程数据块恢复当数据库中只有少量的块需要恢复时,RMAN可以执行块介质恢复(Block Media Recovery)。块介质恢复可以最小化重做日志应用程序的时间,并能极大地减少恢复所需要的I/O数据。在执行块介质恢复时,受影响的数据文件仍可以联机并供用户使用。RMAN将损坏的块信息记录在视图v$database_block_corruption中,可以通过该
36、视图查询损坏的数据块。为了实现数据块恢复,RMAN必须知道数据文件编号和数据文件内的块编号。根据视图中记录的这两个编号值,执行RECOVER语句,可以实现数据块恢复。恢复表空间如果表空间对应的数据文件被损坏,或文件所在的磁盘失效,可以在数据库中执行恢复表空间的操作,在RMAN中执行恢复表空间操作时,需要使用RESTORE命令和RECOVER命令。任务任务9 9图书销售管理系统的数据备份与恢复知识点2Oracle数据库应用技术项目化教程(2)Rman数据恢复命令下面介绍一下上面提到的Rman用于数据库恢复的两个重要命令RESTORE和RECOVER,RESTORE命令可以将COPY和BACKUP
37、命令备份的文件复制到目标数据库,RECOVER命令可以对数据库进行同步恢复。RESTORE命令主要将备份文件复制到数据库目录,而RECOVER命令则是通过日志文件对数据文件进行更新。使用RESTORE命令进行恢复的基本语法如下:RESTORE 其中OBJECT表示恢复的对象,可以使用的对象包括如下:DATAFILE:表示恢复数据文件TABLESPACE:表示恢复一个表空间任务任务9 9图书销售管理系统的数据备份与恢复知识点2Oracle数据库应用技术项目化教程DATABASE:表示恢复整个数据库CONTROLFILE TO:表示将控制文件的备份恢复到某个指定目录ARCHIVELOG ALL:表
38、示将所有的归档日志恢复到指定的目录,为后续使用RECOVER命令对数据库恢复RECOVER命令的基本语法与RESTORE一样,只是在使用RECOVER命令进行恢复时,只可以对表空间、数据文件、和整个数据库进行恢复。其中,表空间只能在数据库正常运行状态下实施恢复,如果数据库因为某些原因导致无法启动,则只能恢复数据库文件或数据库。任务任务9 9图书销售管理系统的数据备份与恢复知识点2Oracle数据库应用技术项目化教程 Oracle的闪回技术最早出现于Oracle Database 9i,为了让用户可以及时获取误操作之前的数据,Oracle Database 9i提供了闪回查询(Flashback
39、 Query)功能。到了Oracle DataBase 10g,闪回查询功能被大大增强,并从普通的闪回查询发展成了多种形式包括:闪回表、闪回删除、闪回版本查询、闪回事务查询和闪回数据库。而现在的Oracle 11g又引入了新的闪回技术:闪回数据归档。使用Oracle闪回技术可以实现数据的迅速恢复,而且不依赖于数据备份。下面将介绍Oracle 11g中的几种常用的闪回技术。1闪回表闪回表 闪回表技术用于恢复表中的数据,可以在线进行闪回表操作。闪回表实质上是将表中的数据恢复到指定的时间点(TIMESTAMP)或系统改变号(SCN)上,并将自动恢复索引、触发器和约束等属性,同事数据库保持联机,从而增
40、加整体的可用性。闪回表需要用到数据库中的撤销表空间,可以通过SHOW PARAMETER undo语句查看与撤销表空间相关的信息。任务任务9 9图书销售管理系统的数据备份与恢复知识点3Oracle数据库应用技术项目化教程进行闪回表操作需要使用FLASHBACK TABLE语句,其语法入下:FLASH TABLE schema. table_name to SCN | TIMESTAMP expr ENABLE | DISABLE TRIGGERS ;语法说明如下:Schema:模式名。table_name:表名。 SCN:系统改变号。相对时间点而言,系统改变号比较难以理解,用户很难知道应该闪回
41、到那个SCN,而时间则显得明了的多。可以使用SCN_TO_TIMESTAMP函数将转变为对应的时间。TIMESTAMP:时间戳,包括年月日时分秒。可以使用TIMESTAMP_TO_SCN函数将时间转变为对应的SCN。任务任务9 9图书销售管理系统的数据备份与恢复知识点3Oracle数据库应用技术项目化教程expr:指定一个值或表达式,用于表示时间点或SCN。ENABLE TRIGGERS:与表相关的触发器恢复后,默认为启用状态。DISABLE TRIGGERS:与表相关的触发器恢复后,默认为禁用状态。默认情况下为此选项。2闪回数据库(闪回数据库(Flashback Database)闪回数据库
42、,实际上就是将数据库回退到过去的一个时间点或SCN上,从而实现整个数据库的恢复,这种恢复不需要通过备份,所以应用起来更方便、更快速。(1)闪回数据库设置要想使用闪回数据库技术,需要对Oracle数据库进行一系列设置。闪回数据库是依赖于闪回日志的,Oracle系统提供了一组闪回日志,记录了数据库的前滚操作。任务任务9 9图书销售管理系统的数据备份与恢复知识点3Oracle数据库应用技术项目化教程首先需要了解如下几个参数。db_recovery_file_dest:闪回日志的存放位置。db_recovery_file_dest_size:存放闪回日志的空间(即恢复区)的大小。db_flashbac
43、k_retention_target:闪回数据的保留时间,其单位为分,默认值为1440,即一天。使用show parameter语句可以查看上述几个参数的值。虽然Oracle系统默认创建了闪回恢复区,但并没有默认启用闪回数据库功能。启用闪回数据库功能需要使用如下语法形式:ALTER DATABASE FLASHBACK ON | OFF ;任务任务9 9图书销售管理系统的数据备份与恢复知识点3Oracle数据库应用技术项目化教程查询数据字典v$database中的flashback_on字段,可以了解闪回数据库功能是否已经启用,查询该数据字典需要使用数据库管理员身份。具体如下:SQLCONNE
44、CT sys/system AS SYSDBA;已链接。SQLSELECT flashback_on FROM v$database;FLASHBACK_ON-NO注:Flashback_on字段的值为YES,则表示已启用闪回数据库功能,为NO则表示未启用。任务任务9 9图书销售管理系统的数据备份与恢复知识点3Oracle数据库应用技术项目化教程启用闪回数据功能的具体步骤如下:1)确定当前数据库的日志模式是否为归档模式,如果不是归档模式,则使用ALTER DATABASE ARCHIVELOG命令修改数据库为归档模式,前提必须使用SHUTDOWN命令关闭数据库并使用STARTUP MOUNT命
45、令启动数据库。2)设置闪回数据库功能为启用状态。使用命令ALTER DATABASE FLASHBACK ON; 3)检查闪回数据库功能是否已经启用。 任务任务9 9图书销售管理系统的数据备份与恢复知识点3Oracle数据库应用技术项目化教程(2)使用闪回数据库)使用闪回数据库启用闪回数据库功能后,就可以对数据库进行闪回操作了。使用闪回数据库,需要用户具有SYSDBA权限。闪回数据库的语法形式如下:FLASHBACK STANDBY DATABASE database_name TO BEFORE SCN | TIMESTAMP expr ;语法说明如下。STANDBY:表示恢复一个备用数据库
46、,如果没有相应的备用数据库,则系统返回一个错误。如果不指定该选项,则所恢复的数据库可以是主数据库,也可以是备用数据库。database_name:数据库名称。默认为当前数据库。SCN:指定一个SCN。TIMESTAMP:指定一个时间戳。Expr:指定一个值或表达式。BEFORE:恢复到指定SCN或时间戳之前。任务任务9 9图书销售管理系统的数据备份与恢复知识点3Oracle数据库应用技术项目化教程3闪回数据归档(闪回数据归档(Flashback DataArchive) 闪回数据归档的实现机制与前面几种闪回不同,它将改变的数据另外存储到特定的闪回数据归档区中,从而让闪回不再受撤消数据的限制,大
47、大提高了数据的保留时间,闪回数据归档中的数据行可以保留几年甚至几十年。 闪回数据归档并不针对所有的数据改变,它只记录UPDATE和DELETE语句,而不记录INSERT语句。 闪回数据归档区,是指存储闪回数据归档的历史数据的区域,他是一个逻辑概念,其实质是从一个或多个表空间中分出来的一定的空间。(1)创建闪回数据归档区 一个Oracle数据库中可以有多个闪回数据归档区,但最多只能允许存在一个默认闪回数据归档区,各个闪回数据归档区都可以有自己的数据管理策略,例如都可以设置自己的数据保留时间等,互不影响。任务任务9 9图书销售管理系统的数据备份与恢复知识点3Oracle数据库应用技术项目化教程(1
48、)创建闪回数据归档区)创建闪回数据归档区 一个Oracle数据库中可以有多个闪回数据归档区,但最多只能允许存在一个默认闪回数据归档区,各个闪回数据归档区都可以有自己的数据管理策略,例如都可以设置自己的数据保留时间等,互不影响。 虽然闪回数据归档区可以基于多个表空间,但是在创建时只能为其指定一个表空间,如果需要指定多个,可以在创建之后使用ALTER语句进行添加。创建与修改闪回数据归档区需要用户具有FLASHBACK ARCHIVE ADMINISTER系统权限。 创建闪回数据归档区的语法形式如下: CREATE FLASHBACK ARCHIVE DEFAULT archive_name TAB
49、LESPACE tablespace_name QUOTA size K | M RETENTION retention_time ;任务任务9 9图书销售管理系统的数据备份与恢复知识点3Oracle数据库应用技术项目化教程【示例【示例9-5】在system用户下创建非默认闪回数据归档区archive01: SQL CONNECT system/system; 已连接。 SQLCREATE FLASHBACK ARCHIVE archive01 2 TABLESPACE bookspace RETENTION 10 day; 闪回档案已创建。【示例9-6】在sys用户下创建默认闪回数据归档区a
50、rchive_default如下: SQL CONNECT sys/admin AS SYSDBA; 已连接。 SQLCREATE FLASHBACK ARCHIVE DEFAULT archiver_default 2 TABLESPACE bookspace RETENTION 1 month; 闪回档案已创建。任务任务9 9图书销售管理系统的数据备份与恢复知识点3Oracle数据库应用技术项目化教程(2)为表指定闪回数据归档区)为表指定闪回数据归档区为表指定闪回数据归档区,实际上及时对表进行跟踪。为表指定闪回数据归档区有两种形式,一种是在创建表时指定,一种是在创建表之后指定。这需要用户具
51、有FLASHBACK ARCHIVE对象权限。在不需要时也可以使用ALTER TABLE语句取消表的闪回数据归档区。小提示小提示:为表指定闪回数据归档区后,将不允许对表执行DDL操作,例如:删除表、增加或删除列、重命名等。Oracle数据库应用技术项目化教程在创建表时为表指定闪回数据归档区在创建表时为表指定闪回数据归档区 在创建表时为表指定闪回数据归档区,需要使用FLASHBACK ARCHIVE子句。【示例示例9-14】在system用户下创建表table01,并为其指定闪回数据归档区 archive01。具体如下: SQL CONNECT system/admin 已连接。 SQL CRE
52、ATE TABLE table01 (id NUMBER , text VARCHAR2(10) 2 FLASHBACK ARCHIVE archive01 ; 表已创建。任务任务9 9图书销售管理系统的数据备份与恢复知识点3Oracle数据库应用技术项目化教程为已存在的表指定闪回数据归档区为已存在的表指定闪回数据归档区 为已存在的表指定闪回数据归档区,需要使用带有FLASHBACK ARCHIVE子句的ALTER TABLE语句。【示例示例9-15】先创建表table02,然后为其指定闪回归档区为archive01。具体如下: SQL CREATE TABLE table02 (id NUM
53、BER , text VARCHAR2(10) ; 表已创建。 SQL ALTER TABLE table02 FLASHBACK ARCHIVE archive01 ; 表已更改。小提示小提示: 使用FLASHBACKARCHIVE子句为表指定闪回数据归档区时,如果不明确指定闪回数据 归档区的名称,则表示使用默认闪回数据归档区,而如果数据库中没有默认闪回数据归档区,则Oracle返回错误。任务任务9 9图书销售管理系统的数据备份与恢复知识点3Oracle数据库应用技术项目化教程取消表的闪回数据归档区取消表的闪回数据归档区 为表指定闪回数据归档区后,对表的操作将受到限制,例如不允许删除表等。使
54、用ALTER TABLE语句可以取消表的闪回数据归档区,其语法形式如下: ALTER TABLE table_name NO FLASHBACK ARCHIVE ;【示例示例9-16】上面为table01指定了闪回数据归档区,如果现在删除该表,Oracle将返回错误: SQL DROP TABLE table01; DROP TABLE table01 * 第 1 行出现错误:ORA-55610: 针对历史记录跟踪表的 DDL 语句无效使用ALERT TABLE语句取消table01表的闪回数据归档区,如下: SQLALTER TABLE table01 NO FLASHBACK ARCHIV
55、E; 表已更改。任务任务9 9图书销售管理系统的数据备份与恢复知识点3Oracle数据库应用技术项目化教程任务任务9.19.1使用Rman备份图书管理系统的数据 我们已经在任务二中创建了图书管理系统的数据库与表空间等,这里我们将对第二章创建的图书管理系统数据库进行完全备份和表空间的备份。任务分析Oracle数据库应用技术项目化教程任务任务9.19.1使用Rman备份图书管理系统的数据 1使用BACKUP FULL语句,对图书管理系统的数据库执行完全备份。使用TAG参数和FORMAT参数指定备份文件的位置以及文件的名称格式。具体如下:RMANRUN2 #BACKUP THE COMPLETE D
56、ATABASE3 ALLOCATE CHANNEL ch1 TYPE DISK;4 BACKUP FULL TAG full_db_backup FORMAT E:backupdb_t%t_s%s_p%p (database);6 RELEASE CHANNEL ch1;7 期中:%s为备份集号,此数字是控制文件中随备份集增加的一个计数器,从1开始。%t指定备份集的时间戳,是一个4个字节的数值,与%s结合构成唯一的备份集名称。%p为文件备份序号,在备份集中的备份文件片编码,从1开始每次增加1。任务实施Oracle数据库应用技术项目化教程小提示:在RMAN,可以将需要执行的SQL语句放在一个RU
57、N语句中进行执行,其中,使用#标识的语句为注释,将不会执行,RUN语句中的各个执行语句,在结束时都必须带有分号。上述RUN语句中,第3行语句表示打开一个DISK通道;第4、5行表示对数据执行全备份;第六行表示关闭通道,也就是释放通道。2使用BACKUP命令备份图书管理系统users表空间。使用TAG参数,指定一个标记信息;使用FORMAT参数,指定备份文件的保存位置以及备份文件的名称格式,语句如下: RMANRUN 2 ALLOCATE CHANNEL ch1 TYPE DISK; 3 BACKUP TAG tbs_users_read_only FORMAT E:backuptbs_user
58、s_t%t_s%s 4 (TABLESPACE users); 5 RELEASE CHANNEL ch1; 6 任务任务9.19.1使用Rman备份图书管理系统的数据 任务实施Oracle数据库应用技术项目化教程3使用增量备份备份图书管理系统的数据库,执行0级增量备份,也就是实现完全数据库备份,具体语句如下:RMANRUN2 ALLOCATE CHANNEL ch1 disk;3 BACKUP INCREMENTAL LEVEL 0 AS COMPRESSED BACKUPSET DATABASE;4 RELEASE CHANNEL ch1;5 小提示:默认情况下,备份文件存储在appAdm
59、inistratorflash_recovery_areaORCL目录下,创建的增量备份为差异增量备份 任务任务9.19.1使用Rman备份图书管理系统的数据 任务实施Oracle数据库应用技术项目化教程此任务拟将在非归档模式或归档模式下使用Rman进行图书销售管理数据库的恢复。任务任务9.29.2使用RMAN恢复图书销售管理数据库任务分析Oracle数据库应用技术项目化教程1在NOARCHIVELOG模式下恢复数据库需要进行以下操作: (1)使用DBA身份登录到SQL*Plus后,确定数据库处于NOARCHIVELOG模式。如果不是,则将模式切换为NOARCHIVELOG。 (2)运行RMA
60、N,连接到目标数据库book。 (3)备份整个数据库。 (4)为了演示介质故障,使用SHUTDOWN命令关闭数据库后,通过操作系统移动或删除users01.dbf数据文件。 (5)启动数据库。 (6)当RMAN使用控制文件保存恢复信息时,必须使目标数据库处于MOUNT状态才能访问控制文件。 (7)执行RESTORE命令,让RMAN确定最新的有效备份集,然后将文件复制到正确的位置,如下: RMANRUN 2 ALLOCATE CHANNEL ch1 TYPE DISK; 3 RESTORE DATABASE; 4 任务任务9.29.2使用RMAN恢复图书销售管理数据库任务实施Access数据库技
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 用户群体差异分析的技巧和操作流程
- 通讯行业销售岗位的面试指南
- 市场研究企业人力资源专员面试要点与难点分析
- 中国航空机场地面保障设备的运行计划
- 杂志编辑职业面试技巧
- 食品行业质量安全项目负责人面试要点解析
- 移动通信基站设备维护面试全攻略
- 银行的客户经理职位的技能要求与培训方法
- 山东省2026年春季高考技能测试酒店管理类模拟试题及答案解析
- 市场营销策略与实践:市场经理工作手册
- 教育测量与评价 课件全套 朱德全 第1-15章 教育测量与评价概述- 教育测评结果的统计处理
- 路亚快艇转让协议书
- 高中英语跨学科教学活动设计
- 证书合作合同协议
- 尾矿坝工程项目施工方案
- 学校食堂副食品配送服务投标方案(技术方案)
- 数学竞赛辅导:《高中数学竞赛辅导班》教案
- T-ZRIA 002-2024 工业巡检四足机器人通.用技术条件
- OptiStruct结构分析与工程应用
- 柴油发电机施工方案
- 药物临床试验质量管理规范(GCP)
评论
0/150
提交评论