oracle数据库备份与恢复方案

合集下载

ORACLE RAC数据库RMAN 备份与恢复

ORACLE RAC数据库RMAN 备份与恢复

rac数据库RMAN 备份与恢复一、数据库备份在主库上通过rman 每天对数据库进行备份,并且保留两份备份在主库删除归档和进行rman 备份的脚本:[oracle@rac1 arch]$ pwd/opt/app/arch[oracle@rac1 arch]$ more del_arch.shexport ORACLE_SID=orcl1export ORACLE_BASE=/opt/app/oracleexport ORACLE_TERM=xtermexport ORACLE_HOME=/opt/app/oracle/product/10.2.0/db_1source /opt/app/arch/orcl1/del_arch.listsource /opt/app/arch/orcl2/del_arch.list/opt/app/oracle/product/10.2.0/db_1/bin/rman target / log='/opt/app/arch/rman.log' <<EOFdelete obsolete recovery window of 3 days;crosscheck archivelog all;delete noprompt obsolete;delete noprompt expired archivelog all;crosscheck backup;delete noprompt expired backup;backup format='/opt/app/arch/rman/orcl_full_%U_%T' tag='orcl_full' database;backup current controlfile tag='orcl_ctlfile'format='/opt/app/arch/rman/orcl_ctlfile_%U_%T';backup spfile tag='orcl_spfile'format='/opt/app/arch/rman/orcl_spfile_%U_%T';exitEOF执行时间:[oracle@rac1 arch]$ crontab -l30 02 * * 0 /opt/app/arch/del_arch.sh30 02 * * 1 /opt/app/arch/del_arch.sh30 02 * * 2 /opt/app/arch/del_arch.sh30 02 * * 3 /opt/app/arch/del_arch.sh30 02 * * 4 /opt/app/arch/del_arch.sh30 02 * * 5 /opt/app/arch/del_arch.sh30 02 * * 6 /opt/app/arch/del_arch.sh每天的备份文件放在/opt/app/arch/rman/目录下二、数据库恢复如果数据库出现故障,可以从备份文件中恢复数据库,最早可以恢复到两天前的备份时间点RAC 下的RMAN 讲究的是备份和还原的策略要一致。

Oracle备份与恢复案例.doc

Oracle备份与恢复案例.doc

Oracle备份与恢复案例By Piner一. 理解什么是数据库恢复当我们使用一个数据库时,总希望数据库的内容是可靠的、正确的,但由于计算机系统的故障(硬件故障、软件故障、网络故障、进程故障和系统故障)影响数据库系统的操作,影响数据库中数据的正确性,甚至破坏数据库,使数据库中全部或部分数据丢失。

因此当发生上述故障后,希望能重构这个完整的数据库,该处理称为数据库恢复。

恢复过程大致可以分为复原(Restore)与恢复(Recover)过程。

数据库恢复可以分为以下两类:1.1实例故障的一致性恢复当实例意外地(如掉电、后台进程故障等)或预料地(发出SHUTDOUM ABORT语句)中止时出现实例故障,此时需要实例恢复。

实例恢复将数据库恢复到故障之前的事务一致状态。

如果在在线后备发现实例故障,则需介质恢复。

在其它情况Oracle在下次数据库起动时(对新实例装配和打开),自动地执行实例恢复。

如果需要,从装配状态变为打开状态,自动地激发实例恢复,由下列处理:(1)为了解恢复数据文件中没有记录的数据,进行向前滚。

该数据记录在在线日志,包括对回滚段的内容恢复。

(2)回滚未提交的事务,按步1重新生成回滚段所指定的操作。

(3)释放在故障时正在处理事务所持有的资源。

(4)解决在故障时正经历一阶段提交的任何悬而未决的分布事务。

1.2介质故障或文件错误的不一致恢复介质故障是当一个文件、一个文件的部分或磁盘不能读或不能写时出现的故障。

文件错误一般指意外的错误导致文件被删除或意外事故导致文件的不一致。

这种状态下的数据库都是不一致的,需要DBA手工来进行数据库的恢复,这种恢复有两种形式,决定于数据库运行的归档方式和备份方式。

(1)完全介质恢复可恢复全部丢失的修改。

一般情况下需要有数据库的备份且数据库运行在归档状态下并且有可用归档日志时才可能。

对于不同类型的错误,有不同类型的完全恢复可使用,其决定于毁坏文件和数据库的可用性。

(2)不完全介质恢复是在完全介质恢复不可能或不要求时进行的介质恢复。

ORACLE11G数据库热备份恢复的方法

ORACLE11G数据库热备份恢复的方法

ORACLE11G数据库热备份恢复的方法ology系统当中的部分表和视图不能被导出。

且exp的导出命令不会出现错误日志。

后来查资料找到了另一种解决数据备份恢复的方法:用expdp和impdp命令导出导入数据则没有上述问题。

完整的从服务器创建数据库备份恢复到本机测试环境的脚本如下:注,红色部分可能环境不同需要调整的变量。

--按win+R键打开运行、输入cmd进入命令行--输入Oralce命令行命令:slplus /nolog--sysdba身份登录Oracle数据库conn sys/Oracle1234$@orcl as sysdba--更改oracle配置参数alter system set &uot_allow_level_without_connect_by&uot=true;--创建临时报空间create temporarytablespaceecology_temptempfile'D:\Developer\oracle\orad ata\orcl\ecology_temp.dbf' size 32M autoextend on next 32M maxsize 2048M extent management local;--创建报空间create tablespaceecology logging datafile'D:\Developer\oracle\oradata\orcl\ecology.dbf' size 32M autoextend on next 32M maxsize 2048M extent management local;--创建备份输出目录(如果此目录在服务上不存在,则需要手动创建)create directory dmpdir as 'D:\ecology_data';--创建用户create user ecology identified by ecology default tablespace ecology temporarytablespaceecology_temp;--给ecology用户授权grant connect, resource, exp_full_database, imp_full_database to ecology;grant create session to ecolo。

数据库常用的备份和恢复方法

数据库常用的备份和恢复方法

数据库常用的备份和恢复方法1. 数据库备份方法:使用数据库管理系统自带的备份工具,比如MySQL的mysqldump 命令、SQL Server的备份与还原工具、Oracle的RMAN等。

2. 备份恢复方法:通过数据库管理系统自带的还原工具进行数据库的恢复操作,还原到备份的状态。

3. 使用备份数据库文件:将数据库文件完整拷贝到另一个地方,以便在需要时进行恢复。

4. 使用数据库复制:通过数据库复制功能实现备份,比如MySQL的主从复制、SQL Server的数据库镜像等。

5. 使用第三方备份工具:如Acronis Backup、Veeam Backup等第三方软件来进行数据库备份。

6. 使用文件系统级别的备份:直接备份数据库所在的文件系统,这种方法需要确保数据库处于非活动状态。

7. 冷备份:在数据库服务未运行的情况下进行备份,确保备份文件的完整性。

8. 热备份:在数据库服务正在运行的情况下进行备份,能够实现数据库的连续性。

9. 定时自动备份:通过定时任务或其他调度工具定期对数据库进行备份,确保备份的及时性。

10. 增量备份:仅备份数据库中发生变化的部分数据,从而减少备份数据的大小和时间。

11. 差异备份:备份数据库自上次完整备份之后发生变化的部分数据,比增量备份更快,但恢复时需要依赖上次的完整备份。

12. 完整备份:备份整个数据库的数据和结构,是最基本的备份方法。

13. 数据库备份到云存储:将数据库备份文件上传至云存储服务,保证备份的安全性和可靠性。

14. 数据库备份加密:对备份文件进行加密,增加备份文件的安全性。

15. 数据库备份压缩:对备份文件进行压缩,减小备份文件的大小,节省存储空间。

16. 数据库备份验证:对备份文件进行验证,确保备份文件的完整性和可恢复性。

17. 数据库备份日志记录:记录备份的相关信息,如备份时间、备份状态、备份文件位置等,便于管理和追踪备份操作。

18. 数据库备份监控:通过监控系统对数据库备份进行实时监控,确保备份的正常进行。

Oracle ramn 备份与恢复

Oracle ramn 备份与恢复

ORACLE数据库的备份与恢复差异增量备份就是备份往前第一个备份级别小于或等于当前备份级别开始到现在的变化。

累计增量备份就是备份往前第一个备份级别小于当前备份级别开始到现在的变化。

0级备份也就是全备份,但0级备份可以在此基础之上再进行备份,但全备份就不可以。

Oracle rman 备份一、数据库全备份方法(nocatalog)1 注意rman有两个,要执行db_1/bin下那个(可以通过修改oracle变量来达到)2 在执行ramn之前要确认当前数据库是否处理Archive Mode模式,并处于Enabled下查看方式:如果不是可以通过如下方式打开并修改:SQL>startup mountSQL>alter database archivelogSQL>alter database open3全备份数据库:A先连接数据库HERMINGB查看备份列表中是否有以前备份的文件C执行全数据库备份4备份完之后可以查看一下备份出来的文件信息:5备份文件存放路径为:二、0级数据库备份A 以nocatalog方式使用rmanB连接数据库C执行0级数据库备份注:全备份与0级备份的相同点是都是将数据库全部备份下来。

全备份与0级备份的不同点是全备份不能作为增量备份,而0级可以作为增量备份。

1级备份就在0级备份的基础上进行的。

三、1级增量备份(基于0级备份之上)总结:可以将备份出来的文件考到其他介质上进行保存,并进行删除。

如果要恢复时请将该文件放回到这文件夹下,并要保存文件名不变。

说明:口令文件因为可以重新设置,所以不用备份,重做日志文件不能在非nocatalog中备份。

四、备份archivelog(参数文件+数据文件+控制文件+归档日志文件)先备份完再删除归档备份五、备份表空间A 查看有哪些表空间B备份名为TBS1的表空间六、备份控制文件七、镜像备份说明:5为TBS1表空间的编号,及对TBS1表空间进行镜像备份。

rman备份与恢复数据库

rman备份与恢复数据库
关闭数据库,然后启动数据库到MOUNT状态,
再执行BACKUP DATABASE指令备份整个数据库。
(1)使用数据库用户名和密码登陆RMAN
D:\>rman target system/oracle@orcl
(2)在RMAN执行程序中,通过客户端指令关闭数据库,
然后从RMAN加载数据到MOUNT状态。
RMAN>shutdown immediate
RMAN>startup mount
(3)使用BACKUP DATABRMAT参数说明备份的全库
(3)将数据库处于归档模式。
使用BACKUP DATABASE联机备份整个数据库
RMAN>backup database;
在备份整个数据库时,其实就是备份了数据文件,
其中包含了当前的控制文件和参数文件。而重做日志文件或归档日志文件
因此oracle建议创建单独的恢复目录,
这样可以更好的发挥RMAN提供的新特性。
快闪恢复区(flash recovery area)
快闪恢复区是存储与备份和恢复数据文件以及相关信息的存储区。
快闪恢复区保存了每个数据文件的备份,
增量备份,控制文件备份,以及归档重做日志备份。
信息库既可以存储在数据库的控制文件中,
也可以存储在恢复目录中。
在oracle中默认先将RMAN信息库写入控制文件,
如果存在恢复目录则需要继续写入到恢复目录。
使用控制文件的不足是控制文件中记录RMAN信息库的空间有限
当空间不足时可能被覆盖掉。
(2)控制文件
(3)数据库文件和控制文件的映像副本
(4)归档日志文件

oracle数据库备份与恢复方案

oracle数据库备份与恢复方案

oracle数据库备份与恢复方案目录一、编写目旳 ......................................................................................................... 错误!未定义书签。

二、备份工具及备份方式...................................................................................... 错误!未定义书签。

三、软件备份 ......................................................................................................... 错误!未定义书签。

四、软件恢复 ......................................................................................................... 错误!未定义书签。

五、数据备份 ......................................................................................................... 错误!未定义书签。

六、备份旳存储 ..................................................................................................... 错误!未定义书签。

七、备份数据旳保留规定...................................................................................... 错误!未定义书签。

Oracle数据库备份与恢复的三种方法

Oracle数据库备份与恢复的三种方法

Oracle数据库备份与恢复的三种⽅法备份与恢复的三种⽅法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)、“累积型”增量导出 累计型导出⽅式是导出⾃上次“完全”导出之后数据库中变化了的信息。

⽐如:exp system/manager inctype=cumulative file=040731.dmp 数据库管理员可以排定⼀个备份⽇程表,⽤数据导出的三个不同⽅式合理⾼效的完成。

数据库备份和恢复

数据库备份和恢复

第六天、数据库的备份和恢复课程大纲与内容1、备份和恢复概述2、故障的类型3、导出和导入实用程序4、练习一、备份和恢复概述对于oracle,备份包括两种类型。

(1)物理备份。

对数据库的操作系统的物理文件(如:数据文件,控制文件和日志文件等)的备份。

物理备份可以分为脱机备份(冷备份)和联机备份(热备份),前者是在关闭数据库的时候进行的,后者是运行在归档日志方式的数据库进行备份。

(2)逻辑备份。

对数据库逻辑组件(如:表和存储过程等数据库对象)的备份。

通过使用export导出实用程序可提取逻辑数据并将其存储为二进制文件,逻辑备份的数据使用import导入实用程序进行恢复。

物理备份是操作系统文件的备份;逻辑备份是数据的备份,不复制物理文件,只将数据库中的某个表导出,节省空间。

逻辑备份在导出数据时没有操作系统信息,所以可以在不同平台之间传输。

另外,用户还可以使用oracle提供的恢复管理器(RMAN,recovery manager)工具集进行增量物理文件备份。

RMAN以一种自动的方式备份、还原和恢复数据库文件,RMAN可以只备份自上次备份以来变化了的数据块。

二、故障的类型1、语句故障。

Sql语句发生逻辑性错误,这种故障系统自动恢复。

比如,将长度为20个字符的数据插入到长度只有10个字符的字段中,就发生语句故障。

2、用户进程故障。

用户在与数据库的会话中异常断开连接,如网络不通,oracle异常终止程序等。

PMON (process monitor进程监控程序)会自动执行进程恢复。

PMON是oracle的后台进程,用于检测中止的进程,PMON会通过回滚事务来处理故障,它还将释放进程当前占用的资源。

3、实例故障。

由于意外断电而导致服务器崩溃,或其中一个后台进程失败时,都会导致实例故障。

当重新启动数据库时如果发现实例故障,oracle会自动完成实例恢复。

实例恢复将数据库恢复到与故障之前的事务一致的状态,oracle会自动回滚未提交的数据。

oracle数据库备份与还原方法

oracle数据库备份与还原方法

oracle数据库备份与还原方法一、Oracle数据库备份方法。

1.1 冷备份。

冷备份是在数据库关闭状态下进行的备份。

这就好比是给一个睡着的人做全身检查,一切都是静止的,好操作。

你得把数据库相关的文件,像数据文件、控制文件、重做日志文件等一股脑儿地拷贝到一个安全的地方。

这种备份方法简单直接,但是呢,在备份期间数据库是不能使用的,就像你要修东西得先把它停下来一样,有点不方便。

不过它恢复起来也相对容易,就像把之前拷贝走的东西再原封不动地拿回来就好。

1.2 热备份。

热备份可就不一样啦,它是在数据库运行的时候进行备份的。

这就像是给一个正在跑步的人换鞋子,难度不小。

热备份主要是利用归档模式,对表空间或者数据文件进行备份。

这种方式不影响数据库的正常使用,就像在火车行驶的时候给它换个小零件,火车还能继续跑。

但是热备份的操作相对复杂一些,需要对Oracle数据库有比较深入的了解,不然很容易搞砸,那可就“偷鸡不成蚀把米”了。

1.3 逻辑备份。

逻辑备份呢,是通过Oracle的工具,比如EXP或者EXPDP来进行的。

这就像是把数据库里的数据按照一定的逻辑规则整理出来,打包带走。

它可以备份特定的表、用户或者整个数据库。

这种备份方式比较灵活,就像你可以从一个大仓库里挑选你想要备份的东西。

但是逻辑备份的速度可能会比较慢,特别是数据量很大的时候,就像小马拉大车,有点吃力。

二、Oracle数据库还原方法。

2.1 冷备份还原。

如果是冷备份还原,那就简单多啦。

首先把数据库关闭,然后把之前备份的文件再拷贝回原来的位置,就像把东西放回原位一样。

不过要注意文件的权限和路径,可不能张冠李戴。

一切就绪后,再启动数据库,就大功告成了。

这就像把修好的东西重新启动,又能正常工作了。

2.2 热备份还原。

热备份还原就复杂得多了。

首先要根据备份的情况,确定需要还原的表空间或者数据文件。

然后利用归档日志和备份文件进行恢复。

这过程就像走钢丝,得小心翼翼的。

Avamar备份和恢复oracle数据库操作手册

Avamar备份和恢复oracle数据库操作手册

Avamar备份和恢复Oracle数据库操作手册1.1 Oracle数据库备份首先要进入Sqlplus用archive log list—查看是否开启了归档模式;Oracle做热备份必须是归档模式,同时需要进入mount或open状态。

因此当发现不是归档模式时,需要采用以下步骤先把Oracle修改为归档模式才能正常备份。

1.首先关闭数据库:2.然后重新连接进sqlplus,再把Oracle启动到mount状态,然后修改成归档日志模式,修改完成后打开数据库到open状态(用alter database open 命令):1.2 Oracle数据库恢复注意:在Oracle恢复之前有几项准备工作要做:首先,在执行恢复之前,先关闭Oracle(SQL>shutdown immediate;);然后,删除联机日志和归档日志(或者转移到另外的目录)。

在测试时为了验证Oracle可恢复,在备份完成后删除了一些表,那么恢复前需要删除现有的联机日志和归档日志。

如果不删除日志,由于在恢复时,只会恢复控制文件和数据库,不会恢复日志文件,因此为了避免恢复后控制文件再去读取现有的日志文件(导致再次做删除操作),所以需要删除联机日志和归档日志(防止删除时正好联机日志做了日志切换)。

具体操作:把D盘oracle\product\10.2.0\oradata\test目录下的REDO01.LOG、REDO02.LOG的、REDO03.LOG 三个联机日志删除,然后再把D盘oracle\product\10.2.0下的相关归档日志删除。

再把Oracle启动到nomount状态,可运行如下命令:C:\Document and Setting\Administrator>sqlplus / as sysdba或C:\Document and Setting\Administrator>sqlplus /nologSQL>conn as sysdba;SQL>Startup nomount;完成以上步骤之后,就可以在Avamar上执行恢复:1.登陆Avamar Administrator管理界面,选择“backup and restore”;2.进入“Backup and Restore”界面;1)选择客户机;2)选择Windows Oracle Rman。

Oracle环境下的数据库备份与恢复策略

Oracle环境下的数据库备份与恢复策略


此 外 ,采 用逻 辑方 式 导 出导入 数据 的 方法 可较 好地 实现 在不 同操 作系 统平 台 、不 同数据 库 版本 之 间进行 数据 库迁 移 ,这 对于 物 理备 份是 一个 很好 的补充 备份 形式 。 三、0 a I数 据库 恢复 rc e 备份 的 目的是 数 据 的安 全 恢 复 。 结合 数 据 库 的 故 障 性 质 , O a l提 供 了不 同的恢 复模 式— — 完全 恢 复和 不完 全恢 复 。 由于 rc e 本文 的备 份策 略 以D A 备份 为主 ,因此 针对 R A 增 量备 份策 略进 JN  ̄N I 行数 据 库恢 复说 明 。 在 利用 R A 进 行完 全恢 复 时 , MN 所有 在 线和 归档 重做 日志 文件 中的记 录都 会被 用来 恢 复数据 库 , 从备 份 中恢 复 已经 损坏 的文 件 , 然 后应 用 日志 文件 将该 数据 文 件恢 复 到当前 时 间 点。下面 的例子 实现 了数据 库 的完 全恢 复 : 1关 闭 目标 数据 库 。 . 2 将 目标数 据库 启动  ̄M U T 态 。 . J ION 状 3 确保 Ns L N 环境变 量 已正确 设 置 : . L— A G . ¥ XO TN S LN =r c e E P R L — A G O a l 数据 库字 符集 4 启动 R A 恢 复管 理器 , 以具有 S S B 权 限 的用 户身 份 登录 . MN Y DA 目标 数据 库 , 同时连 接至 恢 复 目录数据 库 。 5 进行 R A 完全 恢 复 : . MN
备 份策 略确 立 ( )备份 需求 分析 一 根 据某 公 司勘 探开 发技 术数 据 管理 系统 数据 建设 现状 ,分 析 威胁数 据安 全 的主要 因素 , 出数据 备份 系 统应该 满足 如 下要 求 : 得 1具 备灵 活方 便的 可扩 展 能力 。数据 库 日益 增长 的数 据量 要 . 求数据 备份 系 统能 在现 有设 备和 运行 环境 的 基础 上顺 利进 行升 级 和 扩容 。 2 备份 数据 具 备 良好 的可 恢 复性 。可 以 实现数 据库 统 一 、集 . 中、安 全 的备份 和 管理 ,确保 备份 数据 的可靠 性和 可恢 复 性 ,为 进 行数 据恢 复操作 奠定 基 础 。 3 保持 业 务连 续性 。在满 足 油 田勘探 系统 业 务连 续性 要求 的 . 前提 下实施 数 据备 份 ,避 免 数据 存储 设备 长 时 间中断 对应 用系 统 的使用 造成 严重 的影 响 。 ( )备份设 备选 型 二 根 据 对 P E M 据 库 进 行 备 份 需 求 分 析 , 本 文 采 用 IM CD 数 B T MT v l S oa e aa e) S (io i tr g ng r 作为 备份 管理软 件系 统 ,用 于支 持 M 备 份数 据管理 。 T M 数据 传 输 格 式 为 经 过加 密 处 理 的T M S的 S 独有 的二 进 制 格 式 ,在 每次 数据 备份和 恢 复 时 ,T M S 自动进 行C C 据校 验 ,从 而 R数 保 证数据 在备 份和 恢复 过程 中 的完 整性和 安全 性 。 二 、备份 方案实 施 在 辽河油 田公 司IM 5 0  ̄ B p 2 J 务器 上安装T MS r e 作 为T M ] S vr e S 备份 服 务 器 , 在 数 据 库 服 务 器 上 安 装 TM C in 和 T v l a a S 1et io i t D P o e t o r r c e 品,通过T P/I 协议 与T M e v r r t c i nf a l 产 o O C P S r e 连接 。 S 备份存储设备采用磁盘阵列与磁带库相结合的方式 。 M X0 在E C 70 C 磁盘阵列上划分 一部 分空间作为T M S 备份存储 池,最终利用R A 方式 MN 备份的数据都备份 ̄ IM U t im 5 4 tB lr u 3 8 磁带库 。数据 库服务器本地 磁 | 盘上放置 系统数据 库进 行冷备 份和逻 辑备份 时产生的备份 文件。 ( )冷 备份 一 在数 据库 以T A S C I N L 删F I T 或N R A 方 式关 闭后 R N A T O A ,I D A F 0 M L 进行 的备 份称 为冷 备份 或脱 机备 份 ,这样 得 到 的是一 个一 致性 备 份 。在 数 据库 关 闭状态 下 ,冷备 份利 用操 作 系统 拷 贝命令 对所 有 的数据 文件 、控 制文 件 、联机 日志文 件 、初始 化参 数 文件 等进 行 备 份 。一 旦数据 库 出现故 障 ,可 以将 这些 拷 贝文件 重 新覆 盖到 原 文 件位 置 。这 种备 份 可将 数据 库恢 复到 它被 关 闭前 的状态 。 由于P E M 据库 需要 保 证7 4 h 行 ,而冷 备 份必 须在 数 C D数 X2 运 据库 关 闭 的情 况下 进行 , 因此 冷 备份在 正 常 的服务 检修 期 间进行 , 每 年2 。利 用冷 备份 一致 性 的优 点,可 保证 系统 恢复 的快速 性 。 次 ( )逻 辑备 份 二 逻辑 备 份 利用 O a l x o tE 将数 据 库 中 的模 式 对象 导 r c eE pr  ̄ 具 出到 二进 制文件 中 ,然后在 需要 时再利 用O a l m o t 具将 二 r c eI p r 工 进制 文件 中的模 式对 象 重新 导入 到数 据库 中 。 逻辑 备份 可基 于全 库模 式 、用 户模 式或 表模 式将 数据 导 出 , 较 为灵活 。 对于 一些 重要 的数 据可 以采 取该 种 方式 作为 辅助 备份 。 本例 利用 系统 的C O 计 划任 务定 时 自动运 行逻 辑 备份脚 本 。 RN

Oracle-RAC环境数据备份与恢复方案

Oracle-RAC环境数据备份与恢复方案

Oracle RAC 环境数据备份与恢复方案【导读】某企业因项目需要在Oracle RAC集群环境下,根据实际情况对Oracle数据库进行备份;使用生产环境的rman全备数据,进行恢复数据搭建测试环境。

本文将详细介绍此案例中Oracle数据库rman全备份过程、Oracle RAC 环境下rman备份数据如何恢复至单机服务器。

考虑到非常的实用,将实施经验分享给更多同行进行交流学习。

一、背景环境生产环境使用两台DELL R840 服务器,安装了 linux centos 7.6操作系统,并配置多路径,使用 EMC untiy 作为共享存储,分配了2个1T LUN 存储数据库文件,1个500G LUN存放归档数据,3个30G LUN存放 OCR 、FALSH、GIMR 数据。

Oracle RAC 软件版本是19C 19.0.0.0.0。

二、数据备份1、备份策略为保障oracle rac 集群数据安全,因项目组要求设计数据库备份方案。

考虑到服务器RAC1与RAC2每台服务器自带2T本地可用容量,每次全备产生约400GB数据文件。

可将奇数天备份到RAC1,偶数天备份到RAC2,4*400GB=1.6TB,每台服务器可以备份4天的全量数据。

空间非常的富余,不计划使用rman的增量备份,直接全量备份近8天数据,恢复也较为方便。

2、备份过程在RAC1主机下执行,(RAC2同理)首先Oracle 数据库开启归档,归档模式下,才可以进行数据库的热备份、联机备份、手工备份等。

非归档模式下,只能进行冷备份。

当然我们rman备份是在线备份。

如下图:接着,创建rman脚本目录创建备份执行脚本,并加入定时任务创建备份数据清理脚本,并加入定时任务,只备份近4次数据,脚本会自动判断最近一次rman备份是否成功,不成功将不删除备份数据。

这里我调用了zabora.sh 脚本判断rman备份状态,sql语句也比较简单。

定时任务(RAC1)定时任务 (RAC2)记得重启定时任务创建rman执行脚本,用于被上述执行脚本调用3、测试验证第一次可手动执行备份任务,不等到凌晨自动执行查看日志log备份完成如下图:三、数据恢复因为本项目使用的是全备数据,无增量。

Oracle数据库impexp导入导出命令(备份与恢复)

Oracle数据库impexp导入导出命令(备份与恢复)

Oracle数据库imp/exp导入导出命令(备份与恢复)Toad 一个很好的oralce数据库操作与管理工具,使用它可以很方便地导入导出数据表,用户以及整个数据库。

今天在这里主要讲一下用命令行来操作oracle数据导入和导出:备份数据1、获取帮助:exp help=y2. 导出一个完整数据库exp user/pwd@instance file=path full=y示例:exp system/system@xc file = c:/hehe full =yimp tax/test@tax file=d:/dbbak.dmp full=y3 、导出一个或一组指定用户所属的全部表、索引和其他对象exp system/manager file=seapark log=seapark owner=seaparkexp system/manager file=seapark log=seapark owner=(seapark,amy,amyc,harold)示例:exp system/system@xc file=c:/hehe owner=uep4、导出一个或多个指定表exp system/manager file=tank log=tank tables=(seapark.tank,amy.artist)示例:exp system/system@xc file=c:/heh tables=(ueppm.ne_table)恢复数据1. 获取帮助imp help=y2. 导入一个完整数据库imp system/manager file=bible_db log=dible_db full=y ignore=y3. 导入一个或一组指定用户所属的全部表、索引和其他对象imp system/manager file=seapark log=seapark fromuser=seaparkimp system/manager file=seapark log=seapark fromuser=(seapark,amy,amyc,harold)4. 将一个用户所属的数据导入另一个用户imp system/manager file=tank log=tank fromuser=seapark touser=seapark_copyimp system/manager file=tank log=tank fromuser=(seapark,amy) touser=(seapark1, amy1)5. 导入一个表imp system/manager file=tank log=tank fromuser=seapark TABLES=(a,b)****************************************************利用Export可将数据从数据库中提取出来,利用Import则可将提取出来的数据送回Oracle 数据库中去。

ORACLE数据库如何恢复

ORACLE数据库如何恢复

ORACLE数据库如何恢复(邝俊标)ORACLE数据库备份与恢复与ORACLE的结构密切相关,大家先弄清ORACLE 物理结构有哪些?逻辑结构是有哪些?它们的作用是什么?弄明白这些以后,具体怎么备份、怎么恢复就需要了解下ORACLE本身是怎么管理数据库的有那些相关的ORACLE系统表?ORACLE的后台进程是怎么管理的?最后就要知道相关的ORACLE命令、语法,根据系统提示错误灵活处理了。

ORACLE 恢复主要有下面的几种问题:一、数据文件丢失恢复:二、OS备份下的基于时间的恢复三、损坏联机日志的恢复四、损坏当前联机日志恢复五损坏控制文件的恢复六、损坏回滚数据文件的恢复七、损坏临时数据文件的恢复一、数据文件丢失恢复:1、查看报警文件或动态视图v$recover_fileSQL>select * from v$recover_file;2、脱机数据文件SQL> alter database datafile 'file#' offline drop;3、打开数据库,拷贝备份回来(restore),恢复(recover)该数据文件,并联机SQL> alter database open;4、拷贝备份从备份处copy d:\databak\ users01.dbf d:\oracle\oradata\orcl;5、恢复该数据文件SQL> recover datafile 'file#';SQL> recover database; (多个数据文件丢失,恢复整个数据库)6、恢复成功,联机该数据文件SQL> alter database datafile 'file#' online;说明:1) 采用热备份,需要运行在归档模式下,可以实现数据库的完全恢复,也就是说,从备份后到数据库崩溃时的数据都不会丢失。

2) 可以采用全备份数据库的方式备份,对于特殊情况,也可以只备份特定的数据文件,如只备份用户表空间(一般情况下对于某些写特别频繁的数据文件,可以单独加大备份频率)3) 如果在恢复过程中,发现损坏的是多个数据文件,即可以采用一个一个数据文件的恢复方法(第5步中需要对数据文件一一脱机,第6步中需要对数据文件分别恢复),也可以采用整个数据库的恢复方法。

实验8-Oracle数据库备份与恢复

实验8-Oracle数据库备份与恢复

实验8 Oracle数据库备份与恢复1 实验目的(1)掌握Oracle数据库各种物理备份方法。

(2)掌握Oracle数据库各种物理恢复方法。

(3)掌握利用RMAN工具进行数据库的备份与恢复。

(4)掌握数据的导入与导出操作。

2 实验要求(1)对BOOKSALES数据库进行一次冷备份。

(2)对BOOKSALES数据库进行一次热备份。

(3)利用RMAN工具对BOOKSALES数据库的数据文件、表空间、控制文件、初始化参数文件、归档日志文件进行备份。

(4)利用热备份恢复数据库。

(5)利用RMAN备份恢复数据库。

(6)利用备份进行数据库的不完全恢复。

3 实验步骤(1)关闭BOOKSALES数据库,进行一次完全冷备份。

select file_name from dba_data_files;select member from v$logfile;select value from v$parameter where name='control_files';(2)启动数据库后,在数据库中创建一个名为cold表,并插入数据,以改变数据库的状态。

CREATE TABLE COLD(ID NUMBER PRIMARY KEY,NAME V ARCHAR2(25));(3)利用数据库冷备份恢复BOOKSALES数据库到备份时刻的状态并查看恢复后是否存在cold表。

(4)将BOOKSALES数据库设置为归档模式。

1.1 shutdown immediate 正常关闭数据1.2 startup mount;将数据库启动到mount状态3)、关闭flash闪回数据库模式,如果不关闭的话,在后面关闭归档日志的时候就会出现讨厌的ora-38774错误。

alter database flashback off1.3 alter database archivelog;发出设置归档模式的命令1.4 alter database open;打开数据库1.5 再次正常关闭数据库,并备份所有的数据文件和控制文件1.6 archive log list;在将数据库设置为归档模式后,可以执行此命令进行确认1.6.1 Database log mode 为Archive Mode说明当前的数据库为归档模式1.6.2 Automatic archival为Enable说明启动了自动归档。

ORACLE最简单有效的备份恢复方案

ORACLE最简单有效的备份恢复方案

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;数据库已更改。

oracle数据库备份与恢复方法

oracle数据库备份与恢复方法

oracle数据库备份与恢复方法
Oracle数据库备份与恢复是确保数据安全和可靠性的重要方面。

备份是指将数据库中的数据复制到另一个位置,以便在数据丢失或
损坏时进行恢复。

恢复则是指在发生故障或数据丢失时,通过备份
数据来恢复数据库到之前的状态。

一、备份方法:
1. 物理备份,物理备份是通过操作系统级别的工具(如RMAN)将数据库文件直接复制到备份位置。

可以使用RMAN命令行或图形界
面工具来执行物理备份。

2. 逻辑备份,逻辑备份是通过导出数据到逻辑文件(如SQL脚
本或数据泵文件)来进行备份。

可以使用expdp和impdp命令来执
行逻辑备份和恢复。

二、恢复方法:
1. 完全恢复,在数据库严重损坏或丢失时,可以使用完全备份
进行完全恢复。

这涉及将数据库恢复到备份时的状态,并应用任何
后续的归档日志以实现完整的恢复。

2. 不完全恢复,在某些情况下,可能只需恢复部分数据文件或表空间。

这可以通过RMAN进行部分恢复来实现。

除了上述备份和恢复方法外,还有一些其他注意事项和最佳实践:
定期备份,建立合理的备份策略,包括完整备份、增量备份和归档日志备份,以确保数据的及时备份和恢复。

测试恢复,定期测试备份和恢复过程,以确保备份数据的完整性和可用性。

数据库保护,使用冗余服务器、存储冗余和灾难恢复计划来保护数据库免受硬件故障、自然灾害和人为错误的影响。

综上所述,Oracle数据库备份与恢复是确保数据安全和可靠性的重要措施,通过合理的备份策略和恢复方法,可以最大程度地保护数据库免受数据丢失和损坏的影响。

ORACLE数据库数据泵备份与恢复

ORACLE数据库数据泵备份与恢复

ORACLE数据库数据泵备份与恢复EXPDP和IMPDP是服务端的⼯具程序,他们只能在ORACLE服务端使⽤,不能在客户端使⽤。

IMP只适⽤于EXP导出的⽂件,不适⽤于EXPDP导出⽂件;IMPDP只适⽤于EXPDP导出的⽂件,⽽不适⽤于EXP导出⽂件。

⼀、expdp和impdp的使⽤1.创建⽬录create directory DBBAK as '/bak'; #DBBAK名称可以随便命名需要⼿⼯创建/bak,并且此⽬录oracle⽤户有读取写⼊权限2.查看所有⽬录select * from dba_directories;3.给test⽤户赋予在指定⽬录的操作权限,最好⽤root⽤户赋予。

grant read,write on directory DBBAK to test;4.导出数据1)按⽤户导expdp test/test@orcl schemas=test dumpfile=expdp.dmp DIRECTORY=DBBAK logfile=expdp.log2)并⾏进程parallelexpdp test/test@orcl directory=DBBAK dumpfile=expdp1.dmp parallel=10 job_name=test13)按表名导expdp test/test@orcl TABLES=table01,table02 dumpfile=expdp2.dmp DIRECTORY=DBBAK;4)按查询条件导expdp test/test@orcl directory=DBBAK dumpfile=expdp4.dmp Tables=table01 query='WHERE id=001';5)按表空间导expdp system/system DIRECTORY=DBBAK DUMPFILE=tablespace.dmp TABLESPACES=test,USERS;6)导整个数据库expdp system/system DIRECTORY=DBBAK DUMPFILE=full.dmp FULL=y;5、创建表空间及⽤户create tablespace test datafile '+data/test/datafile/data01.dbf' size 32000M;alter tablespace test add datafile '+data2/test/datafile/users02.dbf' size 32000M;create user test identified by test default tablespace TEST temporary tablespace TEMP;grant connect,resource,dba to test;grant read,write on directory DBBAK to test;6、还原数据1)导到指定⽤户下impdp test1/test1@orcl DIRECTORY=DBBAK DUMPFILE=expdp.dmp SCHEMAS=test logfile=impdp.log2)改变表的ownerimpdp system/system DIRECTORY=DBBAK DUMPFILE=expdp2.dmp TABLES=test.table01REMAP_SCHEMA=test1:table11;3)导⼊表空间impdp system/system DIRECTORY=DBBAK DUMPFILE=tablespace.dmp TABLESPACES=test;4)导⼊数据库impdb system/system DIRECTORY=DBBAK DUMPFILE=full.dmp FULL=y;5)追加数据impdp system/system DIRECTORY=DBBAK DUMPFILE=expdp.dmp SCHEMAS=system TABLE_EXISTS_ACTION7、查看数据是否⼀致select OBJECT_TYPE,COUNT(*) from all_objects where OWNER='TEST' group by OBJECT_TYPE;⼆、expdp详细参数可以通过 expdp help=y查看1.CONTENT 指定要导出的数据其中有效关键字为:(ALL), (默认)导出结构和数据DATA_ONLY:只导出数据METADATA_ONLY:只导出结构2.DIRECTORY 供转储⽂件和⽇志⽂件使⽤的⽬录对象3.DUMPFILE ⽬标转储⽂件 (expdat.dmp) 的列表例如 DUMPFILE=scott1.dmp, scott2.dmp, dmpdir:scott3.d4.INCLUDE 包括特定的对象类型例如 INCLUDE=PACKAGE,FUNCTION,PROCEDURE,TABLE:"='EMP'"5.EXCLUDE 排除特定的对象类型与INCLUDE相反6.TABLES 标识要导出的表的列表7.SCHEMAS 要导出的⽅案的列表可⽀持多个schemas=(user01,user02,user03)8.TABLESPACES 标识要导出的表空间的列表9.ATTACH 连接到现有作业, 例如 ATTACH [=作业名]PRESSIONALL :对导出的元数据和表数据都进⾏压缩,得到的导出⽂件是最⼩的,耗时也是最长的。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

oracle数据库备份与恢复方案
目录
一、编写目的 (1)
二、备份工具及备份方式 (1)
三、软件备份 (1)
四、软件恢复 (2)
五、数据备份 (2)
六、备份的存储 (2)
七、备份数据的保存规定 (3)
八、备份介质的格式 (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。

3.每周一将上周的备份文件拷贝到其它存储介质上;
4.每月一号将上月最后一周的备份文件刻录到光盘上。

六、备份的存储
1.在确保成功备份数据的同时,必须严格保证存储结构的完整性,在备份服务器
或备份带库上需要保留足够的剩余空间,以存储需要保存的多份备份文件;
2.如项目上采用了专门的备份软件,有专用的备份存储,应提前规划好备份的存
储空间,比如按时间特征存储相对应的备份:年备份池、月备份池、日备份池;
和按类型存储的备份池:os文件系统池、db数据库池等;
3.如未采用专门的备份软件,在备份服务器上架设专门的ftp服务器,每次备份
之后,由计划任务定时调度,将备份数据传输至备份服务器,传输备份数据的
时间应选在服务器业务较少的空闲时间进行。

七、备份数据的保存规定
1.年备份永久保存(即每年最后一天的备份)
2.保留最近的12期月备份(即每月最后一天的备份)
3.每日备份保留周期为4周
4.制定策略定时删除备份集
5.备份服务器的安全措施:按要求管理用户的创建以及登录,口令的长度以及口
令变更的频度等
八、备份介质的格式
1.每日正常备份的存储格式
(1)数据库完全备份文件,以ORCL数据库为例,文件命名格式如下:ORCL数据库的名称为:ORCL_Full_%d_%T_%t_%s_%p.dbf
其中%d为数据库名称,%T为年月日,%s为备份集的号,%p为该备份
集中的备份片号
(2)归档日志文件,以ORCL数据库为例,文件命名格式如下:
ORCL_ARCH _%d _%T_%t_%s_%p.dbf
其中%d为数据库名称,%T为年月日,%s为备份集的号,%p为该备份
集中的备份片号
2.冷备份的存储格式和编号(只针对手工备份),冷备份可能包括业务系统的目录
备份、数据库目录备份、数据文件的冷备份等,对于其格式,按照其多样性的特点,做如下规定:
(1)业务系统的目录备份,格式为:应用名称_YYYYMMDD.zip,YYYYMMDD 表示年月日的时间格式;
(2)数据库目录备份,格式为ORCL_HOME_YYYYMMDD.zip;
(3)数据文件的冷备份,格式为ORCL_DB_FILE_YYYYMMDD.zip,其中ORCL_DB_FILE表示该备份为业务系统数据库数据文件的备份;
(4)每份冷备份都应有一份同名的描述文件,对备份进行详细描述,其中应包括备份的日期、功能、导致冷备份的原因、备份人等,例如某日做的数据
文件备份ORCL_DB_FILE_YYYYMMDD.zip的描述文件为
ORCL_DB_FILE_YYYYMMDD.txt。

九、数据恢复
1.数据库表级别含行级别数据恢复
如发生数据错误,需要对行/表级别数据进行data fix,可通过事发时的归档日志进行行级别数据恢复,恢复工具为oracle提供的logminer,该工具能回滚任意一条语句级别sql。

如发生非系统表空间数据文件损坏或数据块等,需使用RMAN恢复。

2.数据库级别恢复
视故障情况而定,如发生灾难性或其他严重错误导致当前数据库不可用,需进行数据库级别恢复,采用恢复工具为RMAN,该工具利用带库中所存储备份,可将数据库恢复至事故发生前任意时间点(前提为备份介质完好)。

3.应用恢复
如发生阵列故障或其他导致应用系统文件系统瘫痪的故障,需将文件系统从带库进行恢复,所恢复文件系统为最近备份点文件系统。

感谢下载!
欢迎您的下载,资料仅供参考。

相关文档
最新文档