IFS Oracle备份方案.docx
- 文档编号:14408733
- 上传时间:2023-06-23
- 格式:DOCX
- 页数:12
- 大小:19.55KB
IFS Oracle备份方案.docx
《IFS Oracle备份方案.docx》由会员分享,可在线阅读,更多相关《IFS Oracle备份方案.docx(12页珍藏版)》请在冰点文库上搜索。
IFSOracle备份方案
数据库备份方案
文档控制
●文档变更记录
●审阅
日期
审阅人
目录
数据库备份方案1
文档控制1
目录2
一前言3
二备份恢复工具简介3
1,常用的imp/exp工具3
2,恢复管理器(RMAN)3
三配置RMAN4
1,配置归档(ARCHIVELOG)模式4
2,配置控制文件自动备份4
3,配置控制文件记录保持时间4
4,配置保留策略的恢复窗口4
5,设定默认保存备份文件的路径4
6,启用快速增量备份4
7,配置RMAN使用优化(OPTIMIZATION)模式4
8,配置RMAN使用压缩备份集4
四多级备份策略5
1,零级备份脚本5
2,一级增量备份脚本5
3,一级差异备份脚本6
4,归档文件备份脚本6
五管理RMAN7
1,如果手动删除了备份文件的话,需要执行交叉检验让RMAN进行同步。
7
2,报告已不用(OBSOLETE)和过期(EXPIRED)的备份文件。
7
3,删除已不用(OBSOLETE)和过期(EXPIRED)的备份文件。
7
六使用RMAN进行恢复7
1,完全恢复7
1.1,恢复整个数据库7
1.2,恢复指定表空间或数据文件8
2,不完全恢复8
3,块级别的恢复8
七使用FLASHBACK进行快速恢复9
1,9i中的FLASHBACK:
9
2,10g中的FLASHBACK:
9
八其他高可用性方案(HighAvailability)简介10
一前言
如同社会总会有不公平、人总会犯错误、程序总会有BUG一样,数据库出现问题是不
可避免的,好的备份是项目成功应用的关键。
从独立的硬盘保存备份文件、主机与从机同步(DATAGUARD)到多实例单数据库的
负载平衡(RAC),按照不同的需求对应不同级别的技术,但其根本就是数据的冗余,用人力和物力来提高数据可用性。
强烈推荐备份到其他物理存储设备上,如另一块硬盘,以保证出现介质故障时可以顺利恢复。
二备份恢复工具简介
1,常用的imp/exp工具
我们常用的imp/exp工具是由Oracle提供的用于在客户端把数据导出到dmp文件,进行数据转移和保存的方法,是逻辑备份。
在11gR2中已经废弃exp,保留imp,相关操作由数据汞(DataPump)的impdp/expdp代替。
优点为:
1,使用简单。
2,可以指定导出某个逻辑对象(整个数据库或用户或表)
缺点为:
1,不能进行完全恢复(CompleteRecovery)
2,只能备份数据文件(DataFile)
3,全库导出对数据库压力较大
4,占用空间较大
2,恢复管理器(RMAN)
由Oracle提供的专业的备份与恢复工具,是物理备份。
优点为:
1,可以进行完全恢复与不完全恢复
2,可以备份所有数据库文件(控制文件,服务器参数文件,归档日志文件,数据文件)
3,具有功能强大的控制能力和脚本编写语言
4,支持在线热备份
5,支持多级增量备份
6,支持并行备份,恢复
7,减少备份数据量(压缩、块级备份)
8,可将文件备份到磁盘或磁带
9,支持在线块级别恢复
10,可以限制速率,减少备份中对系统的造成的影响
11,等等。
。
。
三配置RMAN
1,配置归档(ARCHIVELOG)模式
数据库在装载(MOUNT)模式下执行下列操作开启归档模式
SQL>ALTERDATABASEARCHIVELOG;
将数据库置于归档模式可防止重做日志在归档之前被覆盖。
如果处于非归档(NOARCHIVELOG)模式,数据库只能恢复到上一次备份的时间,到当前时间的之间的数据变更都会丢失。
2,配置控制文件自动备份
RMAN>CONFIGURECONTROLFILEAUTOBACKUPON;
RMAN的相关信息保存在控制文件中(非CATALOG模式),如果控制文件丢失而又没有备份的话,会给数据库的恢复造成很大困难
3,配置控制文件记录保持时间
SQL>ALTERSYSTEMSETCONTROL_FILE_RECORD_KEEP_TIME=45;
设置RMAN备份信息保存在控制文件中的时间,要大于等于保留策略的恢复窗口。
4,配置保留策略的恢复窗口
RMAN>CONFIGURERETENTIONPOLICYTORECOVERYWINDOWOF31DAYS;
备份文件超过这个日期时RMAN会标记为已不用(OBSOLETE):
RMAN>REPORTOBSOLETE;
数据库中的文件超过这个日期时RMAN会报告需要备份:
RMAN>REPORTNEEDBACKUP;
5,设定默认保存备份文件的路径
RMAN>CONFIGURECHANNELDEVICETYPEDISKFORMAT'D:
/BACKUP/%U'
6,启用快速增量备份
在9i中,RMAN进行增量备份要扫描所有数据文件,找出发生变更的数据块,然后进行备份。
在10g中,增加了一个新特性---块更改跟踪(BlockChangeTracking),会把发生变更的数据块记录在一个跟踪文件内,这样就避免了增量备份时对数据库的全面扫描。
SQL>ALTERDATABASEENABLEBLOCKCHANGETRACKINGUSINGFILE'D:
/BACKUP/BLOCK_CHANGE_TRACKING.TRC';
7,配置RMAN使用优化(OPTIMIZATION)模式
RMAN>CONFIGUREBACKUPOPTIMIZATIONON;
开启优化模式RMAN会自动跳过满足某些条件的文件,实验表明,优化模式可以提高10%左右的性能
8,配置RMAN使用压缩备份集
RMAN>CONFIGUREDEVICETYPEDISKBACKUPTYPETOCOMPRESSEDBACKUPSETPARALLELISM1;
在10g中RMAN增加了一个新特性---压缩备份集,能够使备份集减少到原来的1/5或1/6,代价是增加10%左右的CPU消耗,可以根据实际情况选择使用。
条件允许的话(多物理硬盘、多CPU)还可以用上面命令设定并行备份
四多级备份策略
采用多级备份是为了减少了恢复所需要的时间和减少每天备份所需要的时间,而又保证系统有很好的恢复性。
但是在恢复时间和备份时间要有一个权衡。
比如只要开始的一个全备份和备份所有产生的归档文件就可以保证把数据库恢复到最新的状态,但是一般来说实际上并不会这么进行(因为在恢复时将需要很长很长的时间),多级备份就是为了解决这样的问题。
以下是一种建议的方案。
每个月做一次零级备份
每个星期做一次一级增量备份
每天做一次一级差异备份
当需要时(如不到二十四个小时归档文件系统就要满了)备份归档文件
1,零级备份脚本
RMAN>RUN{
ALLOCATECHANNEL'DEV1'TYPEDISK;
ALLOCATECHANNEL'DEV2'TYPEDISK;
ALLOCATECHANNEL'DEV3'TYPEDISK;
BACKUPINCREMENTALLEVEL0TAG'LV0'FORMAT'D:
/ORACLE/BACKUP/%U'DATABASEPLUSARCHIVELOGDELETEALLINPUT;
DELETENOPROMPTOBSOLETE;
RELEASECHANNELDEV1;
RELEASECHANNELDEV2;
RELEASECHANNELDEV3;
}
2,一级增量备份脚本
RMAN>RUN{
ALLOCATECHANNEL'DEV1'TYPEDISK;
ALLOCATECHANNEL'DEV2'TYPEDISK;
ALLOCATECHANNEL'DEV3'TYPEDISK;
BACKUPINCREMENTALLEVEL1CUMULATIVETAG'LV1C'FORMAT'D:
/ORACLE/BACKUP/%U'DATABASEPLUSARCHIVELOGDELETEALLINPUT;
RELEASECHANNELDEV1;
RELEASECHANNELDEV2;
RELEASECHANNELDEV3;
}
3,一级差异备份脚本
RMAN>RUN{
ALLOCATECHANNEL'DEV1'TYPEDISK;
ALLOCATECHANNEL'DEV2'TYPEDISK;
ALLOCATECHANNEL'DEV3'TYPEDISK;
BACKUPINCREMENTALLEVEL1TAG'LV1D'FORMAT'D:
/ORACLE/BACKUP/%U'DATABASEPLUSARCHIVELOGDELETEALLINPUT;
RELEASECHANNELDEV1;
RELEASECHANNELDEV2;
RELEASECHANNELDEV3;
}
4,归档文件备份脚本
RMAN>RUN{
ALLOCATECHANNEL'DEV1'TYPEDISK;
ALLOCATECHANNEL'DEV2'TYPEDISK;
ALLOCATECHANNEL'DEV3'TYPEDISK;
BACKUPFILESPERSET3ARCHIVELOGALLDELETEINPUT;
RELEASECHANNELDEV1;
RELEASECHANNELDEV2;
RELEASECHANNELDEV3;
}
则每天所需要备份的数据量只有一天的改变量。
而做恢复时最多只要恢复当月的一个零级备份+三个一级增量备份+6个一级差异备份+当天的归档文件。
如果不能接受这样的恢复时间,就只能够减少零级备份之间的时间间隔(如可以每个星期做一个零级备份,这样恢复时最多只需要恢复一个星期的数据量)。
对于负载极低的系统甚至可以半年做一次零级备份
五管理RMAN
通过RMAN的REPORT,LIST,CROSSCHECK,DELETE命令可以对RMAN进行管理。
1,如果手动删除了备份文件的话,需要执行交叉检验让RMAN进行同步。
RMAN>CROSSCHECKBACKUP;
RMAN>CROSSCHECKARCHIVELOGALL;
交叉检验后RMAN会把已经被手动删除的备份文件的状态设置为过期(EXPIRED)。
2,报告已不用(OBSOLETE)和过期(EXPIRED)的备份文件。
RMAN>REPORTOBSOLETE;
RMAN>LISTEXPIREDBACKUP;
3,删除已不用(OBSOLETE)和过期(EXPIRED)的备份文件。
RMAN>DELETEOBSOLETE;
RMAN>DELETEEXPIREDBACKUP;
六使用RMAN进行恢复
RMAN的整个恢复过程可以分为还原(RESTORE)与恢复(RECOVER),他们在含义上是有很大差别的,一个是指物理意义的文件的还原与拷贝,一个是指数据库一致性的恢复。
数据库的的恢复比较复杂,有许多不同的情况,必须在了解ORACLE数据库结构的条件下用不同的方法进行处理。
下面只列出最普通的恢复情况。
恢复整个数据库之前必须让数据库处于状态的状态(MOUNT)状态。
SQL>STARTUPMOUNT;
然后执行RMAN命令进行还原和恢复。
1,完全恢复
1.1,恢复整个数据库
RMAN>
RUN{
ALLOCATECHANNEL'DEV1'TYPEDISK;
ALLOCATECHANNEL'DEV2'TYPEDISK;
ALLOCATECHANNEL'DEV3'TYPEDISK;
RESTOREDATABASE;
RECOVERDATABASE;
RELEASECHANNELDEV1;
RELEASECHANNELDEV2;
RELEASECHANNELDEV3;
}
1.2,恢复指定表空间或数据文件
在恢复该表空间之前让该表空间处于脱机的状态(OFFLINE状态)。
SQL>ALTERTABLESPACETBSOFFLINE;
然后通过RMN进行恢复。
RMAN>
RUN{
ALLOCATECHANNEL'DEV1'TYPEDISK;
ALLOCATECHANNEL'DEV2'TYPEDISK;
ALLOCATECHANNEL'DEV3'TYPEDISK;
RESTORETABLESPACETBS;
RECOVERTABLESPACETBS;
RELEASECHANNELDEV1;
RELEASECHANNELDEV2;
RELEASECHANNELDEV3;
}
2,不完全恢复
不完全恢复情况比较复杂,大致分一下四类。
1,基于时间的恢复(Time-basedrecovery)
2,基于撤销的恢复(Cancel-basedrecovery)
3,基于改变的恢复(Change-basedrecovery)
4,日志序列恢复(Logsequencerecovery)
3,块级别的恢复
RMAN可以在线对逻辑损坏的数据块进行恢复而不影响数据库的运行。
RMAN>BLOCKRECOVERDATAFILE6BLOCK3;
七使用FLASHBACK进行快速恢复
发生以下类型的错误时,通常需要使用备份执行恢复:
•介质故障:
因数据库文件的物理问题而导致无法读写该文件
•用户错误:
数据库中的数据被误更改或误删除
使用RMAN进行介质故障恢复,使用FLASHBACK进行用户错误恢复。
1,9i中的FLASHBACK:
查询数据库的SCN变化情况
SQL>SELECTNAME,FIRST_CHANGE#FSCN,NEXT_CHANGE#NSCN,FIRST_TIMEFROMV$ARCHIVED_LOG;
获得当前SCN
SQL>SELECTDBMS_FLASHBACK.GET_SYSTEM_CHANGE_NUMBERFSCNFROMDUAL;
创建恢复表,选择恢复到合适的SCN
SQL>INSERTINTOTB_RECOVERSELECT*FROMTBASOFSCN1999999999;
2,10g中的FLASHBACK:
10g的FLASHBACK进行了增强和修改,通过回闪,用户可以完成许多不可能恢复的
工作,目前10g的回闪包括以下特性;
1,oraclefalshbackDatabase.
该特性允许oracle通过Flashbackdatabase语句,将数据库会滚到前一个时间点或者
scn上,而不需要作时间点的恢复工作!
2,oraclefalshbacktable.
该特性允许oracle通过flashbacktable语句,将表会滚到前一个时间点或者scn上。
3,oraclefalshbackdrop.
该特性允许oracle把恢复drop掉的table或者索引。
4,oraclefalshbackversionquery.
该特性可以得到特定的表在某一个时间段内的任何修改记录!
5,oraclefalshbacktransactionquery
该特性可以限制用户在某一个事务级别上检查数据库的修改操作,适用于诊断问题、分
析性能、审计事务。
八其他高可用性方案(HighAvailability)简介
•DataGuard:
提供一组全面的服务,可用于创建、维护、管理并监控一个或多个备用数据库
•OracleRealApplicationClusters(RAC):
用于从多个实例访问单个数据库
•OracleStreams:
可以传播并管理数据流中的数据、事务处理和事件
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- IFS Oracle备份方案 Oracle 备份 方案