oracle学习10-初步了解Rman备份
备份与恢复的定义及分类
备份的定义及分类:
备份就是把数据库复制到转储设备的过程。其中,转储设备是指用于放置数据库副本的磁带或磁盘。通常也将存放于转储设备中的数据库的副本称为原数据库的备份或转储。备份是一份数据副本,从不同的角度分类如下:
从物理与逻辑的角度来分类:
从物理与逻辑的,备份可以分为物理备份和逻辑备份。
物理备份:对数据库操作系统的物理文件(数据文件,控制文件和日志文件)的备份。物理备份又可以分为脱机备份(冷备份)和联机备份(热备份),前者是在关闭数据库的时候进行的,后者是以归档日志的方式对运行的数据库进行备份。可以使用oracle的恢复管理器(RMAN)或操作系统命令进行数据库的物理备份。
逻辑备份:对数据库逻辑组件(如表和存储过程等数据库对象)的备份。逻辑备份的手段很多,如传统的EXP,数据泵(EXPDP),数据库闪回技术等第三方工具,都可以进行数据库的逻辑备份。
从数据库的备份角度分类:
从数据库的备份角度,备份可以分为完全备份和增量备份和差异备份
完全备份:每次对数据库进行完整备份,当发生数据丢失的灾难时,完全备份无需依赖其他信息即可实现100%的数据恢复,其恢复时间最短且操作最方便。
增量备份:只有那些在上次完全备份或增量备份后被修改的文件才会被备份。优点是备份数据量小,需要的时间短,缺点是恢复的时候需要依赖以前备份记录,出问题的风险较大。
差异备份:备份那些自从上次完全备份之后被修改过的文件。从差异备份中恢复数据的时间较短,因此只需要两份数据---最后一次完整备份和最后一次差异备份,缺点是每次备份需要的时间较长。
恢复的定义及分类
恢复就是发生故障后,利用已备份的数据文件或控制文件,重新建立一个完整的数据库,恢复分为以下两种类型:
实例恢复:当oracle实例出现失败后,oracle自动进行的恢复
介质恢复:当存放数据库的介质出现故障时所作的恢复。介质恢复又分为完全恢复和不完全恢复
完全恢复:将数据库恢复到数据库失败时的状态。这种恢复是通过装载数据库备份并应用全部的重做日志做到的。
不完全恢复:将数据库恢复到数据库失败前的某一时刻的状态。这种恢复是通过装载数据库备份并应用部分的重做日志做到的。进行不完全恢复后,必须在启动数据库时用resetlogs选项重设联机重做日志。
RMAN的存储类型有三种方式:
1.备份集 默认类型
2.压缩备份集
3.镜像copy
组成每个备份集的每个文件称之为备份片
RMAN备份可以存放在两种位置:
1.目标数据库的控制文件
2.恢复目录中
RMAN备份的优点:
1.RMAN只备份有效数据
2.RMAN可以实现增量备份
使用RMAN工具
RMAN是oracle的一个重要工具,用于备份和恢复数据文件,归档日志和控制文件,也可以用来执行完全或不完全的数据库恢复。RMAN有3种不同的用户接口,命令行方式,GUI方式(集成在OEM中的备份管理器),API方式(用于集成到第三方的备份软件中),它具有以下特点:
支持在线热备份
支持多级增量备份
支持并行备份、恢复
减少所需要备份量
备份、恢复使用简单
RMAN的组件
target database(目标数据库)
目标数据库就是需要RMAN 对其进行备份与恢复的数据库,RMAN可以备份数据文件,控制文件,归档日志,spfile;
service session(服务器会话)
RMAN启动数据库上的oracle服务器进程,将建立一个与目标数据库的会话,有目标数据库上的服务器进程进行备份、还原、恢复的实际操作。
RMAN Repository(RMAN资料库)
RMAN使用过程中会用到的控制信息,是一些关于备份、归档日志及RMAN活动的元数据
Recovery Catalog(恢复目录)
恢复目录是建立在RMAN恢复目录数据库上的一种schema对象,用于保存RMAN资料库数据。恢复目录是一个可选的组件。RMAN会将资料数据记录在目标数据库的控制文件中,但这样不够安全,因为一旦目标数据库的控制文件损坏就意味着所有的RMAN备份失效。所以建议在单独的一个数据库中建立一个恢复目录另外保存一份资料库数据。
MML(媒体管理库)
MML是第三方工具或软件,用于管理对磁带的读写与文件的跟踪管理。如果你想直接通过RMAN备份到磁带上,就必须配置媒体管理层,媒体管理层的工具和RMAN共同配合完成备份与恢复。
快闪恢复区
快闪恢复区是oracle数据库用于保存所有与恢复相关的文件的默认磁盘位置。这些相关文件包括归档日志,RMAN备份,控制文件自动备份,复用的控制文件和重做日志副本及闪回日志文件。
辅助数据库
在正常使用时,RMAN会与目标数据库一起使用,如果创建了恢复目录数据库,那么也会与恢复目录数据库一起使用。在某些情况下,希望创建辅助数据库。辅助数据库时使用RMAN从目标数据库的备份中创建的新数据库。辅助数据库能够被创建作为备用数据库使用。在数据库发生灾难时,能够在不丢失任何数据及停机时间最短的情况下切换至备用数据库。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 分享4款.NET开源、免费、实用的商城系统
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 记一次.NET内存居高不下排查解决与启示
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了