ORACLE最简单有效的备份恢复方案
oracle数据库备份与恢复方案

oracle数据库备份与恢复方案目录一、编写目的 (1)二、备份工具及备份方式 (1)三、软件备份 (1)四、软件恢复 (1)五、数据备份 (2)六、备份的存储 (2)七、备份数据的保存规定 (2)八、备份介质的格式 (3)九、数据恢复 (4)一、编写目的本文档主要说明公司项目在实施现场的软件及数据的备份和恢复方案。
二、备份工具及备份方式1.备份工具Oracle RMAN(Recovery Manager):是一种用于备份(backup)、还原(restore)和恢复(recover)数据库的Oracle 工具。
RMAN只能用于ORACLE8或更高的版本中。
它能够备份整个数据库或数据库部件,如表空间、数据文件、控制文件、归档文件以及Spfile参数文件。
RMAN也允许您进行增量数据块级别的备份,增量RMAN备份是时间和空间有效的,因为他们只备份自上次备份以来有变化的那些数据块。
2.备份方式(1)自动备份:由Windows 计划任务调度完成;(2)手工备份:完成特殊情况下的备份,分热备份和冷备份,热备份是指在不关闭数据库情况下进行备份,冷备份则需要停止Oracle实例服务。
三、软件备份1.以七天为一个周期每天23:00将所有软件拷贝到其他存储介质上2.超出七天的备份依次删除3.每月一号将上月最后7天的备份文件刻录到光盘上四、软件恢复1.找出最近的备份程序覆盖到正式运行环境的相应目录中五、数据备份1.业务系统或数据库在打重要补丁或升级的前后,必须按要求对业务系统进行停机备份或非停机备份,备份需包含应用和数据库的文件系统及数据,备份方式为手工备份,使用RMAN执行备份;2.系统日常备份:作为7*24运行的重要系统,必须最小化数据丢失的同时,还需要尽可能缩短恢复时间,数据库的日常备份策略如下:(1)确保数据库处于ArchiliveLog模式;(2)每日凌晨01:00执行数据库全备份,含控制文件备份;(3)每四小时间隔执行数据库归档日志备份,含控制文件备份;(4)每间隔两周执行数据库与应用系统文件备份,执行时间:数据库服务器在第一周的周六05:00,应用服务器在第一周的周六7:00。
Oracle备份恢复方案

Oracle 备份恢复方案第一章基础知识一、备份内容:备份数据库一般包括备份数据库文件、控制文件、归档重做日志文件和INIT.OTRA文件,如果有可能,备份还应包括可执行代码和配置文件。
二、备份方法分类:主要的备份方法有物理备份、逻辑备份和恢复管理器(RMAN)备份。
1.物理备份是实际物理数据库文件从一处拷贝到另一处的备份,它使用操作系统提供的拷贝命令来完成,包括操作系统备份(NT下一般不用)、冷备份和热备份;2.逻辑备份是利用SQL从数据库中抽取数据并存入二进制文件,这些数据可以重新导入原来的数据库,或者以后导入其它数据库,ORACLE提供的EXPORT/IMPORT工具可用于进行数据库的导入和导出。
3.恢复管理器RMAN(Recovery Manager)为Oracle 8新引入,能够完成数据库的备份与恢复任务,既可以在图形用户界面GUI中使用,也可以在CLI (命令行)中使用。
三种方法各有长短,DBA应该综合灵活运用。
第二章物理备份和恢复一、冷备份步骤如下:1、关闭数据库实例:命令行下关闭数据库有三种方式:normal,immediate,和abort,对于备份而言,immediate方式最好,因为这种方式既避免了normal方式下因用户忘记退出而造成的等待,且因为Oracle进行了回滚和检查点操作,可以保证数据库的一致和完整性。
推荐在控制面板的服务窗口下关闭专用服务,可以彻底的关闭数据库,这里的数据库服务名为OracleServiceZZYD。
2、拷贝所有与数据库相关的物理文件:包括控制文件、重做日志文件和数据库文件,这里拷贝目录E:\ZZYD即可,另外最好把监听器配置文件(d:\orace\ora81\network\admin\目录下的listener.ora和tnsnames.ora)也拷贝下来。
3、完成拷贝后重新启动数据库。
二、热备份步骤:热备份是一个复杂的过程,这是因为每个表空间都是一个完整的备份过程。
Oracle数据备份与恢复

冷备份与恢复
关闭数据库 :
➢ 以sys用户进入SQL*Plus,并关闭数据库,如下所示。
注意:在关闭数据库时,也可以用其他具有sysdba权限的用户登录SQL*Plus,并 关闭数据库。
冷备份与恢复
复制必要文件 :
➢ 此时可以复制D:\Oracle\PRODUCT\10.2.0\ORADATA\TEST目录下的所有文件(本实 验中数据库相关文件都在此目录下)到目标备份目录E:\TEST中,通过操作系统的命 令(Ctrl+C,Ctrl+V)就可以实现了。
➢上述操作中,用户tytest将自己的表test_exp_imp删除,然后从数据库中退出。
EXP/IMP导入导出
➢上述操作中,采用IMP导入功能将逻辑备份的表test_exp_imp成功导入数据库中,并且 没有出现任何警告
EXP/IMP导入导出
➢导入完成后,可以通过用户tytest连接数据库,并查询该表的结构。可以看到,查询结果 显示出表的结构,没有提示表不存在的错误,因此成功实现了恢复。
冷备份与恢复
启动数据ห้องสมุดไป่ตู้并删除数据 :
➢上述完成了数据库的启动,可以看到数据库已经打开,可以对数据库进行操作了。删除 操作将sys中已经存在的表table1中的所有数据删除。
冷备份与恢复
恢复:
➢如果用户发现table1的删除操作属于误操作,那么可以通过之前备份的文件进行恢复。 执行恢复的前提是首先要关闭数据库,然后再用刚才复制的文件覆盖被复制的文件即 可。打开数据库可以看到表table1中的数据仍然存在,具体如下所示。
冷备份与恢复
➢当 数 据 库 被 关 闭 后 , 就 可 以 利 用 操 作 系 统 命 令 将 E:\TEST 中 的 所 有 文 件 复 制 到 D:\Oracle\PRODUCT\10.2.0\ORADATA\TEST目录下,取代该目录中原来的文件。
ORACLE备份恢复经典案例

ORACLE备份恢复经典案例第一章. 理解什么是数据库恢复当我们使用一个数据库时,总希望数据库的内容是可靠的、正确的,但由于计算机系统的故障(硬件故障、软件故障、网络故障、进程故障和系统故障)影响数据库系统的操作,影响数据库中数据的正确性,甚至破坏数据库,使数据库中全部或部分数据丢失。
因此当发生上述故障后,希望能重构这个完整的数据库,该处理称为数据库恢复。
恢复过程大致可以分为复原(Restore)与恢复(Restore)过程。
数据库恢复可以分为以下两类:1.1实例故障的一致性恢复当实例意外地(如掉电、后台进程故障等)或预料地(发出SHUTDOUM ABORT语句)中止时出现实例故障,此时需要实例恢复。
实例恢复将数据库恢复到故障之前的事务一致状态。
如果在在线后备发现实例故障,则需介质恢复。
在其它情况ORACLE在下次数据库起动时(对新实例装配和打开),自动地执行实例恢复。
如果需要,从装配状态变为打开状态,自动地激发实例恢复,由下列处理:(1)为了解恢复数据文件中没有记录的数据,进行向前滚。
该数据记录在在线日志,包括对回滚段的内容恢复。
(2)回滚未提交的事务,按步1重新生成回滚段所指定的操作。
(3)释放在故障时正在处理事务所持有的资源。
(4)解决在故障时正经历一阶段提交的任何悬而未决的分布事务。
1.2介质故障或文件错误的不一致恢复介质故障是当一个文件、一个文件的部分或磁盘不能读或不能写时出现的故障。
文件错误一般指意外的错误导致文件被删除或意外事故导致文件的不一致。
这种状态下的数据库都是不一致的,需要DBA手工来进行数据库的恢复,这种恢复有两种形式,决定于数据库运行的归档方式和备份方式。
(1)完全介质恢复可恢复全部丢失的修改。
一般情况下需要有数据库的备份且数据库运行在归档状态下并且有可用归档日志时才可能。
对于不同类型的错误,有不同类型的完全恢复可使用,其决定于毁坏文件和数据库的可用性。
(2)不完全介质恢复是在完全介质恢复不可能或不要求时进行的介质恢复。
oracle数据库备份恢复

GS下Oracle数据库备份恢复
注意:在对数据库做任何备份恢复操作时,请先备份数据库,以免丢失数据
本文将以一个例子来说明GS下oracle数据库帐套的备份恢复
原有数据库:cwbase002
恢复数据库:cwbase003
1.首先备份原有数据库cwbase002,使用如下命令:密码和oracle 服务名请改动
exp LC0029999/password@oradb file=d:\back\1\002.dmp owner=LC0029999 2.备份完成后会得到d:\back\1\002.dmp这个文件。
接下来,如果需要恢复到cwbase003,如果cwbase003已经存在的话,如果cwbase003正在使用,请谨慎处理,在确定cwbase003没用的话,删除cwbase003这个库,执行如下sql:Drop user lc0039999 cascade ;
如果cwbase003不存在,请新建lc0039999用户后再导入。
lc0039999需要有dba、resource角色,和unlimited tables权限,表空间用cwbase3,临时表用temp
3.在建好了lc0039999这个用户后,执行如下sql执行数据库恢复:密码和oracle 服务
名请改动
Imp lc0039999/password@oradb file= d:\back\1\002.dmp fromuser=LC0029999 touser=LC0039999
4.在恢复完数据库后,需要修改lc0039999用户下的syap表和system用户下
appinstmantab表,具体配置请查询数据依据帐套信息进行修改。
简单易懂的linux下oracle数据库备份方法

简单易懂的linux下oracle数据库备份方法在Linux环境下,对Oracle数据库进行备份是一项至关重要的工作,以确保数据的安全性和完整性。
下面将为您介绍一种简单易懂的Oracle数据库备份方法。
一、准备工作1.确保已安装Oracle数据库,并正确配置环境变量。
2.确保有足够的权限(如:dba权限)进行数据库备份操作。
3.了解数据库的名称、表空间等信息,以便进行正确的备份。
二、备份方法1.使用RMAN工具进行备份RMAN(Recovery Manager)是Oracle提供的一个强大的备份和恢复工具。
以下是一个简单的RMAN备份示例:a.连接到目标数据库:```rman target /```b.使用RMAN进行备份:```backup database;```这将备份整个数据库,包括控制文件和归档日志。
c.退出RMAN:```exit;```2.使用Oracle SQL命令进行备份a.使用SQL*Plus连接到目标数据库:```sqlplus / as sysdba```b.使用SQL命令备份整个数据库:```alter database backup controlfile to trace;```这将生成控制文件的备份脚本。
c.使用SQL命令备份表空间:```backup tablespace <表空间名称> to disk;```这将备份指定的表空间。
d.退出SQL*Plus:```exit;```三、备份文件的存储1.将备份文件存储在安全的磁带上或磁盘上。
2.建议将备份文件存储在不同的物理位置,以防止数据丢失。
四、定期检查备份1.定期检查备份文件是否完整、可用。
2.定期进行恢复测试,以确保备份的有效性。
通过以上步骤,您已经了解了一种简单易懂的Linux下Oracle数据库备份方法。
Oracle数据库备份与恢复的三种方法
Oracle数据库备份与恢复的三种方法当我们使用一个数据库时,总希望数据库的内容是可靠的、正确的,但由于计算机系统的故障(包括机器故障、介质故障、误操作等),数据库有时也可能遭到破坏,这时如何尽快恢复数据就成为当务之急。
如果平时对数据库做了备份,那么此时恢复数据就显得很容易。
由此可见,做好数据库的备份是多么的重要,下面笔者就以ORACLE7 为例,来讲述一下数据库的备份和恢复。
ORACLE 数据库有三种标准的备份方法,它们分别为导出/导入(EXPORT/IMPORT)、冷备份、热备份。
导出备份是一种逻辑备份,冷备份和热备份是物理备份。
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)即备份三个数据库,比如:exp system/manager inctype=complete file=040731.dmp (2)、“增量型”增量导出备份上一次备份后改变的数据,比如:exp system/manager inctype=incremental file=040731.dmp (3)、“累积型”增量导出累计型导出方式是导出自上次“完全”导出之后数据库中变化了的信息。
oracle归档模式备份恢复
oracle归档模式备份恢复Oracle归档模式1Oracle归档模式设置1.1以系统管理员身份登录sqlplus /nologSQL>connect sys/oracle as sysdba;Connected.1.2检查当前数据库是否为归档模式SQL> archive log list;Database log mode No Archive ModeAutomatic archival DisabledArchive destination USE_DB_RECOVERY_FILE_DESTOldest online log sequence 8Current log sequence 101.3设置归档模式1.全数据库脱机备份(重要),详见全数据库的脱机备份(冷备份)步骤。
2.启动数据库至mount状态SQL> startup mount;3.设置数据库为归档模式SQL> alter database archivelog;Database altered.4.检查数据库归档模式是否开启SQL> archive log listDatabase log mode Archive ModeAutomatic archival EnabledArchive destination USE_DB_RECOVERY_FILE_DESTOldest online log sequence 8Next log sequence to archive 10Current log sequence 105.启动数据库SQL>alter database open;2Oracle归档模式管理2.1启用自动归档修改初始化参数LOG_ARCHIVE_START = TRUE,此值在下次启动数据库时生效。
或SQL>alter system archive log start;下述命令设置实例的当前归档进程数为4:SQL>alter system set log_archive_max_processes=4;2.2停止自动归档修改初始化参数LOG_ARCHIVE_START = FALSE,此值在下次启动数据库时生效。
oracle还原数据库步骤
oracle还原数据库步骤
1. 停止数据库:使用shutdown命令关闭数据库。
2. 恢复控制文件:从备份中恢复控制文件。
3. 恢复数据文件和日志文件:使用RMAN工具恢复备份的数据文件和日志文件。
4. 打开数据库:使用alter database open命令打开数据库并允许访问。
5. 应用归档日志:如果备份不包含最新的归档日志,需要应用归档日志来使数据库达到最新状态。
6. 检查数据:使用数据库工具对数据库进行检查,确保数据完整性和一致性。
7. 启动数据库:通过启动监听器、实例和服务来启动数据库。
以上就是oracle还原数据库的基本步骤。
注意在还原数据库之前要确认备份文件的完整性和可用性,并且备份和还原都需要进行必要的权限和角色设置。
oracle数据库的备份与恢复
第一章备份和恢复的基本概念1. 数据丢失的分类数据丢失可分为逻辑丢失和物理丢失。
逻辑丢失:用户错误操作和应用程序错误造成数据丢失。
物理丢失:数据库物理结构破坏。
2. 备份和恢复的分类逻辑备份和逻辑恢复。
物理备份和物理恢复。
物理恢复的原则:所有的文件必须在时间点上一致。
崩溃恢复(Crash Recovery)与实例恢复(Instance Recovery):包括缓存恢复(Cache Recovery)和事务恢复(Transaction Recovery)。
缓存恢复:利用联机重做日志文件进行恢复。
事务恢复:回退(rollback)未提交的事务。
系统自动做的。
介质恢复(Media Recovery):利用归档重做日志文件和联机重做日志文件进行恢复。
修复(restore)(找出文件)和恢复(recover)(使与其他文件同步)。
3. 逻辑备份和物理备份逻辑备份和物理备份的内容。
物理备份可分为冷备份和热备份。
如何要进行热备份,数据库必须要处于归档模式。
如何要进行冷备份,数据库可以是归档模式,也可以是非归档模式。
冷备份只能将数据库恢复到备份时的状态。
热备份可以将数据库恢复到故障时的状态,或者将数据库恢复到一个指定的时间点(称为基于时间点的恢复)。
物理备份的方式:整库、表空间、数据文件、控制文件、归档重做日志文件、SPfile或Pfile、密码文件、网络文件(listener.ora和tnsnames.ora)。
联机重做日志文件不备份!一致性备份(Consistent Backup):shutdown immediate/normal时备份。
不需要重做日志来进行恢复。
非一致性备份(Inconsistent Backup):open时或shutdown abort时备份。
需要重做日志来进行恢复。
(如果联机重做日志文件丢失,需要有所有数据文件的备份。
)逻辑备份和物理备份的适用策略:逻辑备份只能防止逻辑丢失。
物理备份既能防止逻辑丢失,又能防止物理丢失。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
ORACLE 最简单有效的备份恢复方案ORACLE备份分两种,1.逻辑备份;2.物理备份;逻辑备份又分两种:传统的exp备份;10g开始支持的expdp数据泵备份;物理备份主要就是RMAN备份;最基本的原则是:这些逻辑或物理备份和数据库文件必须放在不同的硬盘上;否者一损俱损;备份就没多大意义了;如果数据库不是很大,比如在50G以下,那么我们就考虑一些傻话化的全备方案我现在的备份方案是:两个逻辑备份和RMAN 备份全部用上;1.传统dmp逻辑备份和恢复1.1传统dmp逻辑备份,这个是最简单的备份方法;现在我提供一个简单的脚本:1.1.1首先建立一个bat文件,名字叫:exp_backup.bat内容是:set oracle_username=%1set oracle_password=%2set local_tnsname=%3set url=%oracle_username%/%oracle_password%if not %local_tnsname% == "" set url=%url%@%local_tnsname%if exist %oracle_username%_old.dmp del %oracle_username%_old.dmpif exist %oracle_username%_old.log del %oracle_username%_old.logif exist %oracle_username%.dmp ren %oracle_username%.dmp %oracle_username%_old.dmpif exist %oracle_username%.log ren %oracle_username%.log %oracle_username%_old.logexp %url% file=%oracle_username%.DMP log=%oracle_username%.LOG该脚本是一个通用的最简单的exp脚本;意思就是:备份之间,把以前的备份文件修改名字,后面加上_old ,如果本来就有old文件,就删除之;之后,就开始备份;备份的文件目录和该脚本一致(这样做最简单);所以总是会出现一新一旧两个文件;当然只要最新的就行了,所以理论上只要一份文件;但是考虑有可能备份的时候突然报错,这样old文件还在,将就着使用,否者新的是坏的,旧的也没了;有的人做一周7天逻辑循环备份,我觉得没有必要,要那么多旧的备份文件何用,浪费空间;1.1.2然后再做一个bat文件,比如是my_exp.bat内容是:call exp_backup.bat USER PASSWORD ""如果是在服务器自身上备份,就不需要写入数据库服务名;如果有多个用户数据需要备份;那么就在my_exp.bat继续添加:call exp_backup.bat USER1 PASSWORD1 ""….My_EXP.BAT可以做成windows的执行计划,每天不忙的时候执行一次;1.2 exp备份的恢复下面就是恢复的最简单方法:1.2.1.把电脑上当前用户彻底删除,用命令,这样就可以把对象彻底清除;DROP USER XXX CASCADE1.2.2.再创建该用户CREATE USER xxxxIDENTIFIED BY xxxxDEFAULT TABLESPACE xxxxTEMPORARY TABLESPACE TEMP并赋予权限:GRANT DBA TO xxxx WITH ADMIN OPTION1.2.3用IMP恢复C:\> imp xxxx/xxxx FILE=xxxx.DMP LOG=xxxx.LOG FULL=Y2.10G后的数据泵expdp备份和恢复2.1 expdp 备份据说这个比exp有很多优点,这个我就不说了,大家可以自己参考资料;不过我测试下来,如果数据量小expdp 还是不如exp的;但是还是建议是使用expdp,因为数据会慢慢变大的,用expdp更好些;我最看重的是:expdp备份的文件涵盖的东西更多;所以恢复的时候方便;删除用户后,可以不用再创建用户恢复;实现方法和exp类似:不过,它的目录不像EXP那么直接,需要使用oracle的目录对象;所以2.1.1第一步先创建一个目录对象,比如:SQL>create or replace directory LOGIC_BUCKUPas 'd:\OACLE_BACKUP\逻辑备份';2.1.2建立一个通用脚本,比如叫EXPDP_BACKUP.BAT内容是:set oracle_username=%1set oracle_password=%2set local_tnsname=%3set url=%oracle_username%/%oracle_password%if not %local_tnsname% == "" set url=%url%@%local_tnsname%if exist %oracle_username%_old_dump.dmp del %oracle_username%_old_dump.dmpif exist %oracle_username%_old_dump.log del %oracle_username%_old_dump.logif exist %oracle_username%_dump.dmp ren %oracle_username%_dump.dmp %oracle_username%_old_dump.dmpif exist %oracle_username%_dump.log ren %oracle_username%_dump.log %oracle_username%_old_dump.logEXPDP %url% DIRECTORY=LOGIC_BACKUP DUMPFILE=%oracle_username%_DUMP.DMP LOGFILE=%oracle_username%_DUMP.LOG PARALLEL=2该方法与上面的dmp备份类似;2.1.3然后再做一个bat文件,比如是my_expdp.bat内容是:call expdp_backup.bat USER PASSWORD ""如果是在服务器自身上备份,就不需要写入数据库服务名;如果有多个用户数据需要备份;那么就在my_exp.bat继续添加:call expdp_backup.bat USER1 PASSWORD1 ""……同dmp备份一样,My_EXPdp.BAT也可以做成windows的执行计划,每天不忙的时候执行一次;2.2 expdp备份的恢复下面就是恢复的最简单方法:2.2.1.把电脑上当前用户彻底删除,用命令,这样就可以把对象彻底清除;DROP USER XXXX CASCADE2.2.2.用另外一个权限较高的用户(最好不是sys,比如是YYYY) 导入:C:\>IMPDP yyyy/yyyy DUMPFILE=xxxx_DUMP.DMP LOGFILE=xxxx_DUMP.LOG DIRECTORY=LOGIC_BUCKUPPARALLEL=2(这里的LOGIC_BUCKUP是oracle的对象目录,要和xxxx_dump.dup存放的目录一致)这样就OK了,也即是说用户不需要创建,数据泵文件含有了用户以及它原来的权限;从这点来讲,是不是比IMP导入更为方便;好了,两种逻辑备份讲完了,下面重点说一下RMAN备份;因为在生产系统中,逻辑备份作用不大的,因为它不能实时的备份数据,所以逻辑备份更多的时候是给开发人员互相导入数据和存储过程之类用的;RMAN备份的原理还是有点复杂的,很多细节的我也不是很清楚,不过没关系,我们可以整理出一套最简单的备份方案:3.RMAN备份和恢复3.1. RMAN备份3.1.1 首先把数据库参数关注一下,关注下面两个参数第一个参数:db_recovery_file_dest_size,上图中的大小是默认的4G,也就是归档模式下,archivelog的所有归档日志文件大小总和,如果超过这个数,就会导致数据库出问题;所以要非常小心,因而建议修改大一些,比如修改成20G;当然最本质的方法,是要按时清理无用的归档日志;第二个参数:db_recovery_file_dest ,这个参数非常重要,是11G里,存放rman备份集和归档日志的地方;默认是放在flash_recovery_area目录下的,因为我的系统的flash_recovery_area 和数据库文件在同一个硬盘,所以修改了;3.1.2.关注redo日志文件,每组里要有两个成员,1个在数据库文件的硬盘下,1个在备份文件的硬盘下,因为日志文件写入最频繁,RMAN无法对它备份,或者说任何备份工具都无法对redo日志备份;不过redo它自己可以做冗余,两个文件只要有一个在,即可;比如:3.1.3做一个最简单的rman备份脚本;3.1.3.1首先做一个txt,比如是:autorman.txt内容是:sql 'alter system archive log current';backup database;delete noprompt obsolete;这三句话的作用分别是:1.对当前redo日志进行归档;2.备份数据库3.删除无效的archive日志和rman备份集3.1.3.2 做一个bat 调用上面的autorman.txt,比如是:autorman.bat内容是:rman target / @autorman.txt然后就在winddows下做一个执行计划,每天或没隔几天,自动执行一下这个autorman.bat当然备份之前,要用rman>show all 看一下参数设置,有没有自动备份控制文件,如果没有,要加上;3.2 rman恢复Rman恢复非常简单;下面说一下步骤:3.2.1 假如最新一次全备是3天前的,先随便建立一个新表,比如是test_rman,随便插几条数据;用来测试还原后,这个最新的对象是否也给恢复了;现在用sqlplus登陆,shutdown 数据库,然后把oracle的数据库文件全部删除(控制文件,redo日志文件,数据库文件);3.2.2 用sql> startup nomount 启动数据库的参数文件,参数文件和数据库文件不在同一个硬盘,所以没丢;这时候如果执行sql>alter database mount 会报错,因为mount会加载控制文件,而控制文件已经丢了;3.3.3.把以前控制文件所在的目录建立好,否者rman找不到控制文件恢复路径;然后执行RMAN> restore controlfile from autobackup;这样控制文件就回复了,有了控制文件就好办了;3.2.4. 以为有了控制文件,所以在sqlplus里,可以装载数据库Sql>alter database mount3.2.5 数据库被装载后,说明控制文件生效了,这时候,所有的数据库信息都出来了;所以可以用rman还原数据库了:RMAN> RESTORE database;3.2.6 恢复数据库:RMAN> recover database;2.2.7 数据库现在已经全部回复好,可以重新启动了:SQL> alter database open resetlogs;数据库已更改。