RMAN 备份相关的概念
一致性和不一致
当数据库处于一致状态时,会发生一致性备份
关闭数据库后,数据库处于一致状态。一致关闭可确保所有重做都已应用于数据文件。如果此时装载数据库并进行备份,则可以稍后恢复数据库备份并打开它,而无需执行介质恢复。但您当然会丢失创建备份后发生的所有事务
在数据库打开时进行的备份不一致,在实例失败或 SHUTDOWN ABORT 命令后进行的备份也不一致。从不一致的备份还原数据库时,Oracle Database 必须先执行介质恢复,这必须开启归档。
以下内容解释为什么第三方快照工具无法备份数据库:
在对联机表空间或数据库执行用户管理的备份时,操作系统实用程序可以在数据库写入器 (DBWR) 更新数据文件的同时备份数据文件。实用程序可以读取处于半更新状态的数据块,以便复制到备份介质的数据块在其前半部分更新,而后半部分包含较旧的数据。这种类型的逻辑损坏称为断开块,即与 SCN 不一致的块。如果必须恢复此备份并且块需要恢复,则恢复将失败,因为该块不可用。
与用户管理工具不同,RMAN 不需要额外的日志记录或备份模式,因为它知道数据块的格式。RMAN 保证不会备份断开的块。在 RMAN 备份期间,数据库服务器会话会读取每个数据块,并通过比较块页眉和页脚来检查它是否已断开。如果数据块已断开,则 session 将重新读取该数据块。如果发现相同的断裂,则该块被视为永久损坏。此外,RMAN 不需要冻结数据文件头检查点,因为它知道读取块的顺序,这使它能够捕获文件的已知良好检查点。
备份集的命名:
使用FORMAT子句指定名称,如果未指定会自动生成%U变量的文件名
%d 数据库名
%I DBID
%t 时间戳
最多可以指定4个FORMAT参数
限制每个备份条目的大小:
请指定
CONFIGURE CHANNEL 或
ALLOCATE CHANNEL 命令的 MAXPIECESIZE 选项。
如果备份集的总大小大于指定的备份条目大小,则 RMAN 将创建多个物理条目来保存备份集内容。
关于多路复用 RMAN 备份集Multiplexed RMAN Backup Sets:
MAN 可以同时从两个数据文件中读取数据,然后将这些数据文件中的块合并到一个备份副本中。
这个不是太懂,有个算法,有时间搜搜文章
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】博客园社区专享云产品让利特惠,阿里云新客6.5折上折
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· DeepSeek “源神”启动!「GitHub 热点速览」
· 微软正式发布.NET 10 Preview 1:开启下一代开发框架新篇章
· C# 集成 DeepSeek 模型实现 AI 私有化(本地部署与 API 调用教程)
· DeepSeek R1 简明指南:架构、训练、本地部署及硬件要求
· 2 本地部署DeepSeek模型构建本地知识库+联网搜索详细步骤