在这里插入代码片## 0、学前须知
0.1、数据库备份
用来备份和恢复数据库文件、归档日志和控制文件,用来执行完全或不完全的数据库恢复。可以跳过未使用的数据块,且使用时不会备份未进行写入操作的数据块,使用oracle特有的二进制压缩可以最大程度上压缩典型数据,减少操作时间。
1、备份定义:
将数据库复制到转储设备的过程。可以是副本盘或者磁盘,按照物理与逻辑两方方面进行分类,在此基础上又分为完全、增量、差异三部分。
2、备份类型分类
-
物理备份:
直接对数据库的物理文件(控制文件、数据文件和日志)的备份。细化为脱机冷备份和联机热百分,后者主要是以归档日志的方式对运行的数据库进行备份。一般情况下使用rman进行操作。
-
逻辑备份:
对数据库逻辑组件(表或者存储结构,甚至可以是数据库对象实例),通过exp、数据泵expdp或者第三方的数据库闪回技术工具
3、备份方式分类(在物理逻辑基础上细分)
- 完全备份,对数据库进行完整备份,发生灾害情况下完成100%恢复。恢复时间最短最方便
- 增量备份,对上次完全备份或增量备份后被修改的文件进行备份。备份时间最短,但是需要依照以前的记录内容
- 差异备份,备份那些自从上次完全备份之后被修改过的文件。从差异备份中恢复数据的时间较短,因此只需要两份数据—最后一次完整备份和最后一次差异备份,缺点是每次备份需要的时间较长
4、恢复方式分类
故障发生后,依照已备份数据文件或控制文件重新建立一个完整的数据库分为实例恢复与介质恢复。
- 实例恢复,oracle出现故障后,利用自带redo或者归档文件进行恢复
- 介质恢复,存放数据库介质出现故障所措的恢复。
- 完全恢复,通过装载数据库备份并应用全部的重做日志做到的。
- 不完全恢复,数据库恢复到数据库失败前的某一时刻的状态。必须在启动数据库时用resetlogs选项重设联机重做日志。
0.2、RMAN简介
用来备份和恢复数据库文件、归档日志和控制文件,用来执行完全或不完全的数据库恢复。可以跳过未使用的数据块,且使用时不会备份未进行写入操作的数据块,使用oracle特有的二进制压缩可以最大程度上压缩典型数据,减少操作时间。 除此之外还有fb的不完全恢复,涉及FB特性
rman通道
RMAN采取通道概念去控制一个数据流,rman中一个通道既是与oracle的一个会话。大部分rman命令通过通道执行,必须配置成持久的,可以跨RMAN会话,或在每个RMAN会话中手动分配。
#目前rman仅有效支持disk和sbt设备,对于
RMAN
- 存储方式:备份集、压缩备份集、镜像copy
- 备份存放位置:目标数据库的控制文件、指定的恢复目录内
- 只备份有效数据,实现增量备份
组件构成:
-
target database目标库,rman操作备份和恢复的数据库,包括但不限于数据文件、控制文件、归档日志和spfile。
-
rman客户端,管理数据备份与恢复操作的客户端应用程序rman客户端允许使用net oracle连接到目标主机的任何数据库
-
service session服务器会话,rman启动数据库上的oracle进程建立一个与目标库会话,用目标库上服务器进程实现备份还原恢复。
-
rman repository rman资料库,rman使用过程中控制信息(备份归档日志和rman活动元数据–结构化数据)
-
recovery catalog恢复目录模式,schema对象,用于保存RMAN资料库数据。恢复目录是一个可选的组件。RMAN会将资料数据记录在目标数据库的控制文件中。
-
recovery catalog database恢复目录数据库,RMAN定期将目标数据库控制文件的元数据传播到恢复目录。
-
physical standby database物理备库,主库的拷贝使用主数据库产生的redo进行更新,RMAN能够创建,备份或恢复备数据库。
在物理备数据库上创建的备份可以在主数据库或在相同的生产数据库的其它的物理备数据库上使用
-
mml媒体管理库,磁带管理与文件跟踪
-
FRA快闪恢复区,保存所有与恢复相关的文件的默认磁盘位置。这些相关文件包括归档日志,RMAN备份,控制文件自动备份,复用的控制文件和重做日志副本及闪回日志文件。
-
oracle enterprise manage 基于浏览器的数据接口