《Oracle数据库管理知识及RMAN概念.pptx》由会员分享,可在线阅读,更多相关《Oracle数据库管理知识及RMAN概念.pptx(82页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、第十一章第十一章 Oracle8.0 RMAN RMAN11.1RMAN的基本概念 在Oracle8.0以后的数据库版本中,增加了一个数据库备份工具,叫RMAN。RMAN通过启动操作系统进程将数据备份到磁盘或磁带上.在操作系统符下输入“rman”,则进入了RMAN中。例如:C:rman 与常用的物理数据库备份、逻辑数据库备份不同,RMAN使用数据库对数据库进行备份的原理。在RMAN中,可以使用COPY命令将数据库文件复制到磁盘或磁带上,也可以使用BACKUP命令对于整个数据库、一个指定的表空间、控制文件,或日志文件进行备份。BACKUP命令可以将数据库备份成为多个数据包,每一个包称为一个备份子
2、集(BACKUPSET),一个备份集又可以分成多个数据片(BACKUPPIECE)。备份集是一个逻辑结构,包含一组的物理文件。这些物理文件就是对应的备份片。注意:一个数据文件不能跨越一个备份集,但是能跨越备份片。数据文件,控制文件能保存在同样的备份集上,但是不能与归档日志保存在同样的备份集上。RMAN可以在不同的操作系统上进行备份。例如,运行在WindowsNT上的RMAN,可以对远程的UNIX服务器上的数据库进行备份。最简单的RMAN运行环境只包括两个组件:RMAN命令执行器与目标数据库。在RMAN命令执行器中执行用于进行备份或恢复操作的RMAN命令,然后由RMAN命令执行器对目标数据库进行
3、相应的操作。但在比较复杂的RMAN环境中会涉及更多的组件,不仅包括RMAN命令执行器与目标数据库,还会包括RMAN恢复目录、备用数据库等组件。目标数据库:利用RMAN进行备份与恢复操作的数据库。RMAN将使用目标数据库的控制文件来收集关于数据库文件的相关信息,并且使用控制文件来存储相关的RMAN操作信息。此外,实际的备份、修复以及恢复操作也是由目标数据库中的服务进程来执行的。RMAN命令执行器:可以看做是目标数据库的一个客户端应用程序。你在RMAN命令执行器中执行RMAN命令,RMAN命令执行器对命令进行解释,然后利用Oracle网络服务来建立到目标数据库的连接,并且调用服务进程来完成实际的备
4、份与恢复操作。RMAN资料档案库:RMAN在进行备份、恢复以及修复操作时需要使用到的管理信息和数据称为RMAN的资料档案库。RMAN的资料档案库可以完全保存在目标数据库的控制文件中,也可以保存在一个可选的恢复目录数据库中。RMAN恢复目录:如果使用一个独立的数据库来保存RMAN的资料档案库,那么RMAN的功能可以得到很大的扩展,这时称RMAN资料档案库的扩展形式为RMAN恢复目录。不建议恢复目录创建在目标数据库上,利用恢复目录可以同时管理多个目标数据库,存储更多的备份信息,可以存储备份脚本。如果不采用恢复目录,可以采用控制文件来代替恢复目录,oracle 9i因为控制文件自动备份的功能,利用控
5、制文件很大程度上可以取代恢复目录。RMAN恢复目录模式:在RMAN恢复目录数据库中拥有RMAN资料档案库的用户模式。RMAN通过这个用户模式来使用和维护它自己的恢复目录。RMAN恢复目录数据库:用来保存RMAN恢复目录的数据库。它是一个独立于目标数据库的Oracle数据库。需要注意的是,在以上组件中,只有目标数据库和RMAN命令执行器是必需的,其他组件都是可选的。11.2RMAN工具的使用11.2.1创建恢复目录步骤1:创建恢复目录数据库。在创建恢复目录之前,必须先为RMAN创建一个数据库。为了数据库安全,最好将恢复目录数据库建在与目标数据库独立的两个服务器上。假设数据库创建如下:系统表空间S
6、YSTEM:90MB。回退表空间:5MB。临时表空间TEMP:5MB。日志文件设置:3个日志文件组,每组两个日志成员,大小为1MB。RECOVERYCATALOG表空间:表空间名为CATTBS,大小为15MB。步骤2:创建RMAN用户,并为用户授权。这里假设用户名为RMAN,密码为RMAN。创建完用户还必须把CONNECT、RESOURCE、RECOVERY_CATALOG_OWNER的权限授予该用户,以便该用户有恢复目录管理的权限。SQLcreate user rman identified by rman default tablespace cattbs temporary tables
7、pace temp;SQLgrant connect,resource to rman;SQLgrant recovery_catalog_owner to rman;步骤3:创建恢复目录。创建恢复目录时,需要先进入RMAN。C:rman进入RMAN后,以RMAN用户登录,创建恢复目录,语法如下:RMANconnectcatalogrman/rmanRMANcreatecatalog;上述命令使用RMAN用户的默认表空间创建恢复目录,如果不使用默认表空间创建恢复目录,则可以输入下列命令:RMANcreate catalog tablespace cattbs;另外,如果恢复目录与目标数据库不在
8、同一服务器上,则应通过“网络连接串”来登录,如:RMANconnectcatalogrman/rman网络连接串RMANdropcatalog;/删除恢复目录11.2.2连接RMAN 使用RMAN时,首先需要为它建立到目标数据库的连接。RMAN可以在无恢复目录及有恢复目录两种方式下连接到目标数据库。1.无恢复目录2.C:rmantarget/3.C:rmantarget/nocatalog4.C:rmantargetsys/change_on_installnocatalog5.C:rmannocatalog6.注意:如果目标数据库与RMAN数据库不在同一台服务器上时,必须使用网络连接串的连接
9、方法。2.有恢复目录步骤1:连接到目标数据库,如:C:rmantargetsys/change_on_installcatalogrman/rman 如果目标数据库与RMAN数据库不在同一台服务器上时,必须使用网络连接串进行连接。如:C:rmantargetsys/change_on_installcatalogrman/rman网络连接串步骤2:注册数据库 注册数据库是将目标数据库控制文件转到恢复目录中。同一个恢复目录中只能注册一个目标数据库。RMANregisterdatabase;步骤3:将目标数据库与恢复目录进行同步化 为了维持恢复目录与目标数据库控制文件的同步化,在RMAN连接到目标
10、数据库之后,必须运行RESYNCCATALOG命令,目标数据库的同步信息输入到恢复目录。RMANresynccatalog;如果目标数据库中的表空间、数据文件发生改变,则必须进行一次同步化过程。除手工进行同步外,还可以在参数文件中增加参数CONTROL_FILE_RECORD_KEEP_TIME,设置同步时间,该参数默认值为7,即每7天系统自动同步一次。11.2.3RMAN命令简介RMAN命令可分为两种类型:独立命令和作业命令。独立命令是指只能直接在RMAN提示符下输入并执行的命令,独立命令主要包括以下一些命令:CHANGECONNECTCREATECATALOG与RESYNCCATALOGC
11、REATESCRIPT、DELETESCRIPT与REPLACESCRIPT 作业命令是指以RUN命令开头并包含在一对大括号中的一系列RMAN命令。这些命令将作为一个完整的命令块一起执行。如果作业命令中的任何一条命令执行失败,则整个作业命令停止执行,即执行失败的命令之后的其他命令都不会再继续执行。下面是一个作业命令的示例。RMANRUN2allocatechanneld1devicetypedisk;3backup4format=e:oraclebackup%u5database;大部分的RMAN命令都是既可以在RUN命令块中使用,也可以在RMAN提示符下直接使用。下面把RMAN的常用命令进行
12、简单的介绍。1.启动与关闭目标数据库命令:RMANshutdownimmediateRMANstartupRMANstartupforceRMANstartupmountRMANalterdatabaseopen 除了在RMAN中可以执行上述命令来启动或关闭数据库外,还可以在RMAN中执行执行SQL语句或语句或PL/SQL过程过程。在RMAN提示符后输入SQL命令,然后在一对单引号(双引号也可)中输入需要执行的SQL语句,即可在RMAN中执行这条语句。RMANSQL ALTER SYSTEM ARCHIVE LOG ALL;需要在RMAN中执行PL/SQL过程,也可以使用类似的方法来实现。比如
13、:RMANRUN23SQL BEGIN scott.update_log;END;4 注意:如果要在SQL语句或PL/SQL过程中包含单引号,必须在SQL语句或PL/SQL过程中的每个单引号前面再添加一个单引号;另外在RMAN中不能执行SELECT语句。2.数据库备份与恢复命令:COPY命令:COPY命令是数据库文件的复制,可以复制单个的数据文件、归档日志、控制文件等。其语法为:RMANcopyto 其中,是被备份的文件;是使用COPY命令复制文件的目的路径及文件名;是可选项。使用COPY命令可以一次备份多个文件,备份多个文件时,用逗号隔开。COPY命令结束时,自动将所分配的通道释放。BACK
14、UP命令:BACKUP命令语法为:RMANBACKUP()其中,是备份增量级,可以取的值为Full或Incremental,Full表示全备份,Incremental表示增量备份,共有4级增量(1、2、3、4);是备份对象;为可选项,主要参数如表所示:参数名含义说明Tag表示标记Format表示文件存储格式IncludeCurrentControlfile表示备份控制文件Filesperset表示每个备份集所包含的文件Channel用于指定BACKUP命令所用的通道DeleteA11Input表示备份结束时是否删除归档日志Maxsetsize表示备份集的最大尺寸SkipOFFLINE、READ
15、ONLY、INACCESSIBLE表示在备份集中排除某些数据文件或归档重做日志文件RESTORE命令RESTORE命令将COPY及BACKUP命令备份的文件复制到目标数据库。其语法为:RMANRESTORE其中,是备份文件对象,可使用的对象及含义如表所示:备份文件对象 含义说明Datafile 表示恢复数据文件Tablespace 表示恢复一个表空间Database 表示恢复整个数据库Controlfile 表示将控制文件的备份结果恢复到指定目录Archivelog All 表示将全部的归档日志复制到指定的目录,用于后续的RECOVER命令对数据库实施恢复。而是选项,其含义如表所示:参数名含义
16、说明CHANNEL表示恢复终止控制条件PARMS表示设置磁带参数,磁盘通道不使用此参数untilClause表示恢复终止条件VALIDATE表示是否对文件进行检查CHECKLOGICAL表示是否对文件进行检查CHECKREADONLY表示是否对文件进行检查DEVICETYPE用于指定通道设备类型FROMTAG用于在备份时设置有标记的备份文件,可以使用此参数指出要恢复的文件的标记FROMBACKUPSET|DATAFILECOPY表示是从BACKUP的文件还是从COPY的文件中进行恢复RECOVER命令RECOVER命令将RESTORE命令恢复到目标数据库中的文件实施数据库同步恢复。RECOVE
17、R命令的语法如下:RMANRECOVER 其中,是要恢复的对象类型,有数据文件、表空间,以及数据库。其中,表空间只能在数据库正常运行状态下实施恢复,如果数据库因为某些原因导致无法启动,则只能恢复数据文件或数据库。数据文件恢复后,该数据文件所对应的表空间随之恢复正常。而是选项,其含义如表所示:参数名含义说明NOREDO用于非归档方式下的数据库恢复FROMTAG备份文件的标记ARCHIVELOGTAG日志文件的标记DELETEARCHIVELOG表示数据库恢复后是否要删除归档日志CHECKREADONLY表示在数据库恢复时是否对只读表空间进行检查3.恢复目录维护命令:显示完全备份时的数据库结构RM
18、ANreportschema显示备份列表RMANlistbackup如果要显示某个表空间的备份情况:RMANlist backup of tablespace users 显示预定义的默认配置参数 RMANshowall修改默认的配置参数RMANconfigure;如利用configurechannel来指定默认的自动分配通道配置:RMANconfigure channel device type disk format e:oraclebackuprman%u 最后需说明的是,在RMAN中还可以将命令作为脚本存储起来,需要时在直接在RMAN中执行,具体使用如下:RMANcreate scri
19、pt usr_bak 2allocate channel default channel type disk;3 backup tablespace users;4 创建完脚本后,直接在RMAN工具中输入如下命令即可执行该脚本:RMANrun 2execute script usr_bak;311.3RMAN的配置11.3.1通道概述 通道是RMAN中最基本的概念,一个RMAN通道表示了一个到存储设备的数据流,它对应于目标数据库中的一个服务进程。凡是在执行需要与目标数据库或操作系统进行交互操作的命令之前,都必须首先为这个命令分配一个通道。在Oracle9i中,通道包括自动通道分配(Automa
20、tic Channel Allocation)与RUN命令手动通道分配。11.3.2自动分配通道 在RMAN中,在RUN外部使用BACKUP、RESTORE、DELETE命令,或在RUN中使用这些命令时,如果没有用手工方式为RMAN命令分配通道,RMAN将利用预定义的设置来为命令自动分配通道。定义自动通道语法如下:CONFIGUREDEVICETYPEsbt/diskPARALLELISMnCONFIGUREDEFAULTDEVICETYPETODISK(sbt)CONFIGURECHANNELDEVICETYPECONFIGURECHANNELnDEVICETYPE例如,分配两个磁带通道,3
21、个磁盘通道:RMANCONFIGUREDEVICETYPEsbtPARALLELISM2;RMANCONFIGUREDEVICETYPEdiskPARALLELISM3;同时,可以重新设置RMAN配置的通道个数。例如,将磁盘通道数改为两个:RMANCONFIGUREDEVICETYPEdiskPARALLELISM2;指定自动通道的默认设备 命令CONFIGUREDEFAULTDEVICETYPEtoDISK(sbt)用于指定自动通道的默认设备。如果大部分数据库备份使用磁带备份时,可以设置:RMANCONFIGURE DEFAULT DEVICE TYPE TO sbt;则RMAN仅使用SBT
22、设备进行数据备份。自动通道参数配置 命令CONFIGURE CHANNEL DEVICE TYPE 用于定义无通道号的设备,则所有通道的配置参数相同;命令CONFIGURE CHANNEL n DEVICE TYPE用于定义指定的一个通道参数。例如:CONFIGURE CHANNEL DEVICE TYPE disk MAXPIECESIZE=2MCONFIGURE CHANNEL 5 DEVICE TYPE disk MAXPIECESIZE=1M清除自动分配的通道的设置 清除自动分配通道设置,可以将通道清除为默认状态。清除命令格式如下:CONFIGUREDEVICETYPEdiskCLEA
23、R;CONFIGUREDEFAULTDEVICETYPECLEAR;CONFIGURECHANNELDEVICETYPEsbtCLEAR;CONFIGURECHANNEL5DEVICETYPEdiskCLEAR;清除完成后,可以使用RMANshowall显示系统默认值。11.3.3手动分配通道 如果不使用自动通道方式时,则可以使用RUN命令定义手动通道(ManuallyAllocatedChannels)。定义手动通道的语法如下:RUNALLOCATE CHANNEL 通道名称DEVICE TYPE 设备类型;BACKUP ;如:RUNALLOCATECHANNELc1DEVICETYPEsb
24、t;BACKUPtablespacesystem;手动分配多个通道 可以定义多个通道,使用多个并行的通道进行备份。在下面的例子中,BACKUP命令使用3个通道同时备份3个数据文件,3个通道同时被激活,一个通道备份一个数据文件。RUNALLOCATE CHANNEL c1 DEVICE TYPE disk;ALLOCATE CHANNEL c2 DEVICE TYPE disk;ALLOCATE CHANNEL c3 DEVICE TYPE disk;BACKUP DATAFILE 1,2,3 在以下的程序中,虽然定义了多个通道,但分别使用了3个BACKUP命令备份3个数据文件,同一时间只有一个
25、文件进行备份,只激活一个通道,所以只使用一个通道。RUNALLOCATE CHANNEL c1 DEVICE TYPE sbt;ALLOCATE CHANNEL c2 DEVICE TYPE sbt;ALLOCATE CHANNEL c3 DEVICE TYPE sbt;BACKUP DATAFILE 1;BACKUP DATAFILE 2;BACKUP DATAFILE 3;11.3.4设置通道控制参数 无论是自动通道还是手动通道,每一个通道都可以设置一些参数,以控制通道备份数据时备份集大小。通道控制参数如下。设置参数FILESPERSET 参数FILESPERSET用于限制BACKUP时备
26、份集(BackupSet)的文件个数。例如,分配一个自动通道,并限制该通道每两个文件备份成为一个备份集。ALLOCATECHANNELch1DEVICETYPEsbtFILESPERSET=2;设置参数MAXPIECESIZE 参数MAXPIECESIZE用于设置备份集中每一个备份片(BackupPieces)文件的大小。定义该参数时可以指定通道名称,为指定通道设置参数。例如,设置通道2及chl的备份片大小为20MB:CONFIGURECHANNEL2DEVICETYPEdiskMAXPIECESIZE=20M;ALLOCATECHANNELch1DEVICETYPEsbtMAXPIECESI
27、ZE=20M;设置参数FORMAT参数FORMAT用于设置备份文件的存储目录及存储格式。设置方法如下:CONFIGURECHANNELDEVICETYPEdiskFORMAT=/u01/oracle/backup/%U设置参数MAXSETSIZE参数MAXSETSIZE用在BACKUP、CONFIGURE命令中设置备份片的大小。例如,设置使用BACKUP命令备份数据库时,每个备份集大小不超过100MB。CONFIGURECHANNEL1DEVICETYPEsbtMAXSETSIZE=100M;设置参数RATE参数RATE用于设置通道的I/0限制。自动分配通道时,可以按下述方法设置:CONFIG
28、URECHANNEL1DEVICETYPEsbtRATE=200K;设置参数CONNECT参数CONNECT是设置数据库实例的参数。RMAN允许同时连接到多个不同的数据库实例上。例如,定义3个磁带通道,分别连接到3个数据库实例prodl、prod2、prod3上。其中,prodl、prod2、prod3是主机字符串。CONFIGURECHANNEL1DEVICETYPEsbtCONNECT=sys/managerprod1;CONFIGURECHANNEL2DEVICETYPEsbtCONNECT=sys/managerprod2;CONFIGURECHANNEL3DEVICETYPEsbtC
29、ONNECT=sys/managerprod3;11.4基于RAMN的数据库备份11.4.1数据库完全备份如果允许暂时关闭目标数据库,那么可以在关闭状态下对整个数据库进行一致备份。但如果不允许关闭目标数据库,那么只能在打开状态下对整个数据库进行不一致备份,此时数据库应该运行在归档模式下。下面是一个数据库完全备份的实例:RMANrun2allocatechanneldev1typedisk;3backup4full5tagfull_db_backup6formatc:oracledb_t%t_s%s_p%p7(database);8releasechanneldev1;9通过下面的命令显示恢复目
30、录中记载的备份集信息:RMANlistbackupsetofdatabase;11.4.2表空间备份 无论数据库处于打开状态还是不打开状态,你都可以在RMAN中对单独的表空间进行备份。另外联机备份表空间时,不需要在备份前执行ALTERTABLESPACEBEGINBACKUP命令将表空间设置为备份模式。下面是一个表空间备份的实例:RMANrun2allocatechanneldev1typedisk;3backup4tagtbs_users5formatc:oracletbs_users_t%t_s%s6(tablespaceusers);7releasechanneldev1;使用下列命令来
31、显示恢复目录中该表的备份信息:RMANlistbackupsetoftablespaceusers;11.4.3数据文件备份 在RMAN中利用BACKUPDATAFILE命令可以对单独的数据文件进行备份,你可以利用数据文件的名称或编号来指定要备份的数据文件。下面是一个单独的数据文件备份的实例:RMANrun2allocatechanneldev1typedisk;3backup4format%d_%u5(datafilec:oracledbssysbigdb.dbf);6releasechanneldev1;7使用下面的命令显示恢复目录中备份的数据文件:RMANlistbackupsetofd
32、atafile1;上面的例子是对数据文件进行备份,还可以使用COPY命令对数据文件进行拷贝,如下列命令:RMANrun2allocatechanneldev1typedisk;3copydatafilec:oracledbstemp.dbftoc:oraclebackupstemp.dbf;4releasechanneldev1;5使用下面的命令显示恢复目录中的文件拷贝:RMANlistcopyofdatafilec:oraclebackupstemp.dbf;拷贝数据文件和备份数据文件是不一样的,数据文件拷贝是一个该文件的镜像。文件的备份产生一个备份集。11.4.4控制文件备份 无论数据库处
33、于打开状态还是不打开状态,你都可以在RMAN中对当前的控制文件进行备份。在RMAN中对控制文件进行备份的方法很多。最简单的就是利用CONFIGURE命令将CONTROLFILEAUTOBACKUP设置为ON,启动RMAN的控制文件自动备份功能。下面是一个利用手工方式进行控制文件备份的实例:RMANrun2allocatechanneldev1typedisk;3backup4formatcf_t%t_s%s_p%p5tagcf_monday_night6(currentcontrolfile);7releasechanneldev1;811.4.5归档日志文件备份 归档重做日志文件是成功进行介
34、质恢复的关键,因此你必须经常对归档重做日志文件进行备份。在RMAN中备份归档重做日志文件用BACKUPARCHIVELOG命令。下面是一个归档日志文件备份的实例:RMANrun 2allocate channel dev1 type disk;3backup 4format d:oraclebackuplog_%t_s%s_ p%p 5(archivelog all);6 release channel dev1;7 如果想备份序列号从6070的归档日志,则可以使用以下脚本:RMANrun 2)allocate channel devl type disk;3 backup 4format d
35、:oraclebackuplog_t%t_s%s_p%p 5(archivelog from logseq=60 until logseq=70 thread l);6 release channel devl;7 下面的脚本备份在24小时内产生的归档日志,在备份完成后会自动删除归档日志。如果备份失败,归档日志不会被删除。RMANrun2allocatechanneldev1typedisk;3backup4formatc:oracle/backups/log_t%t_s%s_p%p5(archivelogfromtimesysdate-1alldeleteinput);6releasecha
36、nneldev1;7使用下面的命令显示恢复目录中的归档日志:RMANlistbackupsetofarchivelogall;11.4.6备份联机日志文件联机日志不能用RMAN来备份,必须先将其归档。为了实现这点,必须在RMAN中执行如下SQL语句:RMANrun2allocatechanneldev1typedisk;3sqlaltersystemarchivelogcurrent;4backup5formatc:oracle/backups/log_t%t_s%s_p%p6(archivelogfromtimesysdate-1alldeleteinput);7releasechannel
37、dev1;811.4.7RMAN的增量备份 在RMAN中还可以通过增量备份的方式对整个数据库、单独的表空间或单独的数据文件进行备份。如果数据库运行在不归档模式下,那么只能在数据库干净关闭的状态下进行一致性的增量备份,而如果数据库运行在归档模式下,那么既可以在数据库关闭状态下进行增量备份,也可以在数据库打开状态下进行增量备份。数据库一级增量、不积累备份runa11ocatechanneldev1typedisk;backupformatc:oraclebackupb_%u_%S_%pincrementallevel1(databaseincludecurrentcontrolfile);rele
38、asechanneldev1;数据库积累备份runallocatechanneldeve1typediskformatE:ORACLEbackupb_%u_%s_%p;backupincrementallevel1cumulative(databaseincludecurrentcontro1file);backup(archivelogalldeleteinput);表空间增量、不积累备份,含所有日志runallocatechanneldeve1typediskformatE:ORACLEbackupb_%u_%s_%p;backupincrementallevel2(tablespaceC
39、FW_DAT,TEMPincludecurrentcontrolfile);backup(archivelogalldeleteinput);数据文件增量备份,包含日志文件runallocatechanneldeve1typediskformatE:ORACLEbackupb_%u_%s_%p;backupincrementallevel2(datafileD:DATACFW_IDX2.ORA,E:ORAClEDATABASECFW_IDXl.ORAincludecurrentcontrolfile);backup(archivelogalldeleteinput);注意:注意:对日志文件不能
40、进行增量备份。11.5基于RMAN的数据库恢复 使用RMAN备份的数据库只能使用RMAN提供的恢复命令进行恢复。与用户自定义方式类似,RMAN的数据库恢复操作也分为两个步骤:首先修复数据库,然后再进行恢复操作。在RMAN中使用RESTORE命令进行数据库修复,RESTORE命令利用硬盘中的备份集或镜像复制来修复数据文件、控制文件以及归档重做日志文件;使用RECOVER命令进行数据库恢复,RECOVER命令对修复后的数据文件应用联机或归档重做日志,从而将它们更新到当前时刻或指定时刻下的状态。11.5.1完全数据库恢复 如果数据库所有的数据文件都被损坏,那么必须利用RMAN修复所有的数据文件,然后
41、再对数据库进行一次完全介质恢复。要对数据库进行完全恢复,则目标数据库必须运行在归方式下。进行恢复之前,需要把数据库设置为加载但不打开状态。RMANrun2allocatechanneldeve13typedisk;4restoredatabase;5recoverdatabase;6恢复完后用ALTERDATABASEOPEN语句来打开数据库。11.5.2表空间恢复 在恢复表空间之前,先将要恢复的表空间离线,然后实施表空间恢复,恢复之后再将表空间联机。RMANrun2allocatechanneldev1typedisk;3sql“altertablespaceusersofflineimme
42、diate”;4restoretablespaceusers;5recovertablespaceusers;6sql“altertablespaceusersonline”;7releasechanneldev1;8 注意:如果还原系统表空间文件,数据库必须关闭,因为系统表空间不可以脱机。11.5.3数据文件恢复 数据文件的恢复与表空间的恢复比较类似,数据库必须处于归档日志模式,而且数据库必须打开。RMANrun2allocatechanneldev1typedisk;3sqlaltertablespaceusersofflineimmediate;4restoredatafile4;5re
43、coverdatafile4;6sqlaltertablespaceusersonline;7releasechanneldev1;811.5.4控制文件恢复 控制文件破坏时,数据库只能启动到NOMOUNT状态下,即只启动数据库实例。在实例启动后,将控制文件复制回相应目录,实施恢复即可。恢复控制文件的过程如下。RMANrun2 startup nomount;3 allocate channel deve14type disk;5 restore controlfile;6 alter database mount;7restore database;8recover database;9 a
44、lter database open resetlogs;10 11.5.5不完全介质恢复 不完全数据库恢复的结果使数据库恢复到过去的某一个时间点。在实施不完全恢复时,可以使用参数SETUNTIL命令设置恢复终止标记,然后再分别使用RESTORE和RECOVER命令进行数据库修复和恢复。其中,终止标记可以是时间,SCN或者是日志顺序号。下面是使用不完全数据库恢复方法,将数据库恢复到2002年10月15日09:00:00的例子。恢复结束时,使用RESETLOGS打开数据库,则日志全部清零。RMANrun2setuntiltime2002-10-1509:00:00;3restoredatabas
45、e;4recoverdatabase;5alterdatabaseopenresetlogs;6若以SCN或日志顺序号为恢复终止标记,则示例如下:RMANrun2setuntilscn1000;3restoredatabase;4recoverdatabase;5alterdatabaseopenresetlogs;6或RMANrun2setuntilsequence121;3restoredatabase;4recoverdatabase;5alterdatabaseopenresetlogs;6演讲完毕,谢谢观看!Oracle ERP主要模主要模块块 InvoicesARENGBOMWIP
46、Bills andRoutingsShipmentsECOSWorkOrdersGLAPPlanning(MRP)POMaterialRequirementsEnterpriseDemandVendor POInterplant POReceiptsWorkOrders CustomersJournal EntriesJournal EntriesJournal EntriesVendor InvoicesVendor PaymentsTransportationInformationBillsItemsOEINVINVInternalPaymentsCorporateJournal Entr
47、iesShipments OrdersFAMass AdditionJournal EntriesCOSTCOSTCOSTReceipts财务配销HRPayroll制造人力资源财务系统模块财务系统模块财务系统模块财务系统模块:Oracle Oracle 总帐管理(总帐管理(总帐管理(总帐管理(GLGL)Oracle Oracle 应付帐管理(应付帐管理(应付帐管理(应付帐管理(APAP)Oracle Oracle 固定资产管理(固定资产管理(固定资产管理(固定资产管理(FAFA)Oracle Oracle 应收帐管理(应收帐管理(应收帐管理(应收帐管理(ARAR)Oracle Oracle 现
48、金管理(现金管理(现金管理(现金管理(CECE)Oracle Oracle 项目会计(项目会计(项目会计(项目会计(PAPA)Oracle Oracle 财务分析(财务分析(财务分析(财务分析(OFAOFA)分销系统模块分销系统模块分销系统模块分销系统模块:Oracle Oracle 库存管理(库存管理(库存管理(库存管理(INVINV)Oracle Oracle 采购管理(采购管理(采购管理(采购管理(PURPUR)Oracle Oracle 销售定单管理(销售定单管理(销售定单管理(销售定单管理(OEOE)Oracle Oracle 销售销售销售销售&市场管理(市场管理(市场管理(市场管理
49、(SMSM)Oracle Oracle 销售补偿管理(销售补偿管理(销售补偿管理(销售补偿管理(SCSC)Oracle Oracle 售后服务管理(售后服务管理(售后服务管理(售后服务管理(SRSR)Oracle Oracle 销售分析(销售分析(销售分析(销售分析(OSAOSA)Oracle ERP 模模块清清单制造系统模块制造系统模块制造系统模块制造系统模块:Oracle Oracle 计划管理(计划管理(计划管理(计划管理(MPS/MRPMPS/MRP)Oracle Oracle 能力计划管理(能力计划管理(能力计划管理(能力计划管理(CAPCAP)Oracle Oracle 制造数据管
50、理(制造数据管理(制造数据管理(制造数据管理(BOMBOM)Oracle Oracle 车间生产管理(车间生产管理(车间生产管理(车间生产管理(WIPWIP)Oracle Oracle 成本管理(成本管理(成本管理(成本管理(CSTCST)Oracle Oracle 项目制造(项目制造(项目制造(项目制造(PJM)PJM)Oracle Oracle 流程制造流程制造流程制造流程制造 (OPM)(OPM)Oracle Oracle 质量管理(质量管理(质量管理(质量管理(QM)QM)其他系统模块其他系统模块其他系统模块其他系统模块:Oracle Oracle 设备管理(设备管理(设备管理(设备管