当前位置: 首页 > news >正文

第三篇《RMAN 备份与恢复指南:保障数据库安全》(RMAN)

《Oracle 数据迁移与备份系列》

第三篇:《RMAN 备份与恢复指南:保障数据库安全》(RMAN)

1.概述

RMAN(Recovery Manager) 是 Oracle 数据库内置的专用备份与恢复工具,提供高效、安全的物理级数据保护机制。它支持数据库的 完整备份、增量备份、数据恢复 以及 跨平台迁移,是 DBA 进行数据库管理的重要工具。

2.RMAN介绍

2.1功能概述

  • 数据库备份:支持 完整备份增量备份归档日志备份,确保数据安全。

  • 数据恢复:可快速恢复数据库,包括 整库恢复、表空间恢复、数据文件恢复 等。

  • 跨平台迁移:支持 跨操作系统 迁移数据库,如 Linux 迁移至 Windows。

  • 备份优化:支持 压缩、去重、加密,减少备份存储占用,提高安全性。

2.2核心特性

RMAN 具有以下特性,使其成为 Oracle 官方推荐的备份与恢复工具:

备份管理
  • 支持热备份:可在数据库运行时执行备份,无需停机。
  • 增量备份:仅备份 自上次备份以来 发生变化的数据,提高效率。
  • 自动备份控制文件与 SPFILE,防止重要元数据丢失。
数据恢复
  • 块级恢复:当某个数据块损坏时,可直接修复,而无需恢复整个数据文件。
  • 时间点恢复(PITR):可将数据库恢复到指定时间点,适用于误操作恢复。
  • 快速故障恢复:结合 Flashback 技术,实现 回滚操作、数据库重演

3.RMAN的优势

  • 高效备份:支持 增量备份、压缩存储,减少磁盘占用。

  • 快速恢复:可进行 整库、表空间、数据文件、块级别恢复,避免全库重建。

  • 跨平台迁移:支持 不同架构的 Oracle 版本迁移,灵活适配业务需求。

4.RMAN数据迁移实施步骤

4.1环境准备

(1)确保主备库环境一致

  • 目标服务器上的oracle版本必须与源库相同或更高
  • 目录结构尽量一致
    • 如果不一致需要手动调整。

(2)开启归档模式

在主库执行:

SELECT LOG_MODE FROM V$DATABASE;

如果未显示open状态

SHUTDOWN IMMEDIATE;
STARTUP MOUNT;
ALTER DATABASE ARCHIVELOG;
ALTER DATABASE OPEN;

(3)启用强制日志模式

ALTER DATABASE FORCE LOGGING;

4.2使用RMAN全备份

  • 适用于数据量适中可接受服务器长时间停机的状况。

(1)备份数据库

在主库上,使用RMAN进行全备份:

rman target /
RUN {
    BACKUP DATABASE FORMAT '/u01/backup/db_%U.bkp';
    BACKUP CURRENT CONTROLFILE FOR STANDBY FORMAT '/u01/backup/standby_control.bkp';
}

命令解析

  1. rman target /

    • 连接 RMAN,target / 表示 直接连接本地数据库(以 Oracle 用户运行)。
  2. BACKUP DATABASE FORMAT '/u01/backup/db_%U.bkp';';

    • 备份 整个数据库(包括数据文件)。

    • FORMAT '/u01/backup/db_%U.bkp'
      

      指定备份文件路径:

      • %U:RMAN 自动生成唯一的备份文件名,避免冲突。
  3. BACKUP CURRENT CONTROLFILE FOR STANDBY FORMAT '/u01/backup/standby_control.bkp';

    • 备份当前 控制文件,用于创建 Standby 备库。
    • FOR STANDBY:指定该控制文件将用于 Data Guard 备库

(2)传输数据文件到备库

scp /u01/backup/* oracle@<备库IP>:/u01/backup/

(3)在备库恢复数据库

rman target /
RUN {
    SET DBID <主库DBID>;   # 可选,确保识别正确的备份
    STARTUP NOMOUNT;
    RESTORE STANDBY CONTROLFILE FROM '/u01/backup/standby_control.bkp';
    ALTER DATABASE MOUNT;
    RESTORE DATABASE;
    RECOVER DATABASE;
}
  • SET DBID <主库DBID>;:选择数据库DBID,防止RMAN误识别数据库。
  • STARTUP NOMOUNT 先启动实例,再恢复控制文件,符合最佳实践。
  • ALTER DATABASE MOUNT 挂载数据库,使其进入 Standby 状态。
  • RECOVER DATABASE 应用归档日志,确保数据一致性。

(4)启动数据库

ALTER DATABASE OPEN RESETLOGS;

4.3使用RMAN全备份

  • 适用于数据量适中可接受服务器长时间停机的状况。

(1)备份数据库

在主库上,使用RMAN进行全备份:

rman target /
RUN {
	BACKUP INCREMENTAL LEVEL 0 DATABASE FORMAT '/u01/backup/db_%U.bkp';
	BACKUP CURRENT CONTROLFILE FORMAT '/u01/backup/controlfile.bkp';	
}

命令解析

  1. rman target /

    • 连接 RMAN,target / 表示 直接连接本地数据库(以 Oracle 用户运行)。
  2. BACKUP INCREMENTAL LEVEL 0 DATABASE FORMAT '/u01/backup/db_%U.bkp';

    • 备份 整个数据库(包括数据文件)。

    • INCREMENTAL LEVEL 0

      • Level 0(全备份):相当于完整备份,备份所有数据块。
      • Level 1(增量备份):仅备份 自上次 Level 0 或 Level 1 以来 发生变化的数据块。
    • FORMAT '/u01/backup/db_%U.bkp'
      

      指定备份文件路径:

      • %U:RMAN 自动生成唯一的备份文件名,避免冲突。
  3. BACKUP CURRENT CONTROLFILE FOR STANDBY FORMAT '/u01/backup/controlfile.bkp';

    • 备份当前 控制文件,用于创建 Standby 备库。
    • FOR STANDBY:指定该控制文件将用于 Data Guard 备库

(2)传输数据文件到备库

scp /u01/backup/* oracle@<备库IP>:/u01/backup/

(3)在备库恢复数据库

rman target /
RESTORE DATABASE;
RECOVER DATABASE;

(4)定期进行增量备份

主库 定期执行增量备份:

rman target /
BACKUP INCREMENTAL LEVEL 1 DATABASE FORMAT '/u01/backup/inc_%U.bkp';

然后传输到 目标库 并恢复:

scp /u01/backup/inc_* 目标服务器:/u01/backup/
rman target /
RECOVER DATABASE;

(5)最终切换

在主库 最后一次增量备份 并传输到目标库后,执行:

ALTER DATABASE OPEN RESETLOGS;

5.结语

至此,使用 RMAN 进行数据迁移 的流程已完成。

本文旨在为初学者提供学习参考,作者仍在不断学习和探索,若有不足之处,欢迎指正交流。如遇问题,欢迎私信或在评论区讨论,共同进步!😊

相关文章:

  • SIP 协议详解:原理、用途与应用场景
  • ES索引知识
  • WorkTool 技术解析:企业微信自动化办公的合规实现方案
  • 深入浅出 Elasticsearch 的 dense_vector 字段类型
  • 适合于金融系统开发者的书籍大全
  • STM32-Unix时间戳
  • 如何在自己的网站接入API接口获取数据?分步指南与实战示例
  • 【DNS系列】使用TCP传输
  • HTTP重定向原理+实现
  • 个人网站部署
  • redis 清理缓存
  • [数据结构]排序之希尔排序( 缩小增量排序 )
  • 《C语言中“输入魔法师”:scanf函数的奥秘与技巧》
  • 每日一题力扣807.保持城市天际线c++
  • SpringBoot使用DeepSeek APi
  • 点云深度学习系列:PVRCNN——point-voxel融合的分割模型
  • HashiCorp Vault (凭据管理系统)和 PAM(特权访问管理系统)的应用场景对比
  • Linux 进程的一生(一):进程与线程的创建机制解析
  • Python 网络编程实战:5分钟实现多线程下载工具与 Web 服务器
  • Android SharedPreference 详解
  • 人民日报:应对外贸行业风险挑战,稳企业就是稳就业
  • 美媒:受关税政策影响,美国电商平台近千种商品平均涨价29%
  • 最高法专门规范涉企案件审执工作:从源头防止趋利性执法司法
  • 国家核安全局局长:我国核电进入大规模建设高峰期,在建规模超其他国家总和
  • 商务部:已有超1.2亿人次享受到以旧换新补贴优惠
  • 乐聚创始人:人形机器人当前要考虑泡沫问题,年底或将进入冷静期