参考资料:

Rman简介

Rman-Recover manager恢复管理工具。

Oracle集成了很多环境的一个数据库备份和恢复的工具。

Rman可以做下列事情:

  • 数据库热备份

    • 全库备份和恢复

      • 数据库克隆(DG)
    • 增量备份和恢复
    • 表空间备份和恢复
    • 数据文件备份和恢复
    • 归档备份和恢复
    • 控制文件和参数文件备份和恢复
  • 数据库冷备份
  • 备份集的管理
    • 备份策略
    • 保留和删除备份数据
    • ......

冷备份和热备份区别

对于oracle数据库只有物理备份和逻辑备份

  • 物理备份:是将实际组成数据库的操作系统文件从一处拷贝到另一处的备份过程,通常是从磁盘到磁带
  • 逻辑备份:是利用SQL语言从数据库中抽取数据并存于二进制文件的过程。

物理备份用于实现数据库的完整恢复,但数据库必须运行在归挡模式下(业务数据库在非归挡模式下运行),且需要极大的外部存储设备,例如磁带库,具体包括冷备份和热备份。冷备份和热备份是物理备份(也称低级备份),它涉及到组成数据库的文件,但不考虑逻辑内容。

  • 冷备份发生在数据库已经正常关闭的情况下,当正常关闭时会提供给我们一个完整的数据库
  • 热备份是在数据库运行的情况下,采用archivelog mode方式备份数据库的方法。

热备份和冷备份可以参看:什么是冷备份和热备份,有什么区别?

应该备份哪些文件?

  • Oracle数据文件
  • 控制文件
  • 归档日志
  • 在线日志
  • 参数文件
  • 密码文件

Rman备份实验演示

备份数据库

在数据库运行的时候进行Rman备份则是热备份,需要当前数据库处于归档模式

检查数据库是否是归档模式的命令:

sqlplus / as sysdba
SQL> archive log list;

如果处于archive mod下,则可以进行热备。使用quit退出sqlplus状态,进入恢复管理器。

C:\Users\clg>rman target /

恢复管理器: Release 11.2.0.1.0 - Production on 星期一 3月 21 14:46:00 2016

Copyright (c) 1982, 2009, Oracle and/or its affiliates.  All rights reserved.

连接到目标数据库: ORCL (DBID=1433387646)

备份数据库的命令:( 全备)

RMAN> backup database;

会备份数据文件和控制文件还有spfile。

备份表空间

可以备份某个特定的表空间

RMAN> backup tablespace users;

备份文件

备份制定的文件,根据文件号备份。

RMAN> backup datafile 4;

备份归档日志

RMAN> backup archivelog all;

查看备份信息

RMAN> list backup;

如果备份的时候恢复区的空间不够,超出了恢复文件数的限制,那么就会出现backup失败。则可以删除之前的备份。

RMAN> delete backupset;
或者
RMAN> delete backup;

使用这两条命令都会删除备份片段列表。

Rman可以发出一些管理类的SQL语句。

从备份文件中恢复数据库文件

先使用restore命令从备份集中拷贝数据库文件到oradata文件夹下(数据库存放数据文件的地方)。

restore database;
或者
restore tablespace user;
或者
restore datafile 4;

第一个是将整个数据库的数据文件拷贝过来,第二个只是拷贝表空间user的数据文件。

然后使用recover进行介质恢复。

recover database;
或者
recover datafile 4;

根据拷贝过来的数据文件dbf进行全库恢或者根据具体的文件进行恢复。

Rman增量备份

使用Rman 全备份以及增量备份

附:

关于数据文件的状态信息(online or offline等等),可以参见v$datafile视图。


记得帮我点赞哦!

精心整理了计算机各个方向的从入门、进阶、实战的视频课程和电子书,按照目录合理分类,总能找到你需要的学习资料,还在等什么?快去关注下载吧!!!

念念不忘,必有回响,小伙伴们帮我点个赞吧,非常感谢。

我是职场亮哥,YY高级软件工程师、四年工作经验,拒绝咸鱼争当龙头的斜杠程序员。

听我说,进步多,程序人生一把梭

如果有幸能帮到你,请帮我点个【赞】,给个关注,如果能顺带评论给个鼓励,将不胜感激。

职场亮哥文章列表:更多文章

本人所有文章、回答都与版权保护平台有合作,著作权归职场亮哥所有,未经授权,转载必究!

Oracle Rman备份恢复和管理的更多相关文章

  1. Oracle RMAN备份恢复指导书

    目 录 1 目的与范围... 1 2 术语和定义... 1 3 角色和职责... 2 4 使用RMAN备份数据库... 2 4.1.1 检查数据库模式... 2 4.1.2 连接到target数据库. ...

  2. Oracle—RMAN备份(三)

    一.增量备份的相关概念 1. 在前面说明了RMAN的完整备份,完整备份是备份所用使用过的块,不备份没有使用的过的块:增量备份只备份自上次备份以来更改过的块. 2.即使RMAN的默认操作是在增量备份时扫 ...

  3. ORACLE RMAN备份--差异增量与累积增量的策略实例图

    转自原文 ORACLE RMAN备份--差异增量与累积增量的策略实例图

  4. ORACLE RMAN备份及还原 RMAN能够进行增量备份:数据库,表空间,数据文件

    ORACLE RMAN备份及还原   RMAN能够进行增量备份:数据库.表空间.数据文件 仅仅有使用过的block能够被备份成backup set 表空间与数据文件相应关系:dba_data_file ...

  5. rman备份/恢复

    全备脚本 cat rman_full.sh #!/bin/bash export ORACLE_BASE=/opt/oracle export ORACLE_HOME=$ORACLE_BASE/pro ...

  6. Oracle RMAN 备份一例

    Oracle RMAN备份一例: Solaris 10 + Oracle 11.2.0.3 Shell:csh,安装有bash,脚本调用bash 备份策略:周日0级备份,周一~周六1级备份,每6小时备 ...

  7. Oracle—RMAN备份(一)

    一.RMAN备份相关概念 1.RMAN备份中表空间不需要处于backup模式下,它备份数据文件,归档日志文件,控制文件,spfile和备份集片,但不备份联机重做日志文件,临时文件和口令文件. 2.备份 ...

  8. Oracle—RMAN备份(二)

    在Oracle  RMAN备份(一)中,对各种文件在RMAN中备份进行了说明, 一.备份集的复制 在RMAN 备份中,可以备份其自己的备份,即备份一个文件放在多个目录下,oralce支持最多备份四个. ...

  9. rman备份恢复命令之switch

    rman备份恢复命令之switch 一 switch 命令 1 switch命令用途 更新数据文件名为rman下镜像拷贝时指定的数据文件名 更新数据文件名为 set newname 命令指定的名字. ...

随机推荐

  1. C#LeetCode刷题之#441-排列硬币(Arranging Coins)

    问题 该文章的最新版本已迁移至个人博客[比特飞],单击链接 https://www.byteflying.com/archives/3995 访问. 你总共有 n 枚硬币,你需要将它们摆成一个阶梯形状 ...

  2. Redis持久化存储——>RDB & AOF

    Redis中两种持久化存储机制RDB和AOF redis是一个内存数据库,数据保存在内存中,但是我们都知道内存的数据变化是很快的,也容易发生丢失.幸好Redis还为我们提供了持久化的机制,分别是RDB ...

  3. 数据库课程设计:SQL Server + Express + node.js + ejs 论坛管理系统

    前言 这是一篇对数据库课程设计的总结,这不是教程也不是指导,只是我的经验之谈,其中可能有许多错误,请小心,不要被误导.祝愿你看了这篇文章后能做出更好的设计. 我对web开发并不熟悉,而我们的课程设计只 ...

  4. JavaScript学习系列博客_23_JavaScript 构造函数

    构造函数 - 构造函数是专门用来创建对象的函数 创建一个对象时,通过构造函数的方式来创建.这是通过Object()这个构造函数来创建的一个实例obj. var obj=new Object(); - ...

  5. Debian 镜像使用帮助

    链接: Debian 镜像使用帮助 buster: # 默认注释了源码镜像以提高 apt update 速度,如有需要可自行取消注释 deb https://mirrors.tuna.tsinghua ...

  6. Hibernate在MySQL中查询区分大小写

    MySQL查询中默认是不区分大小写的,比如如下语句: SELECT * from PersonBehDevice where flag=0 AND devicecode ='ddjc' 查询结果如下: ...

  7. 第一篇Scrum冲刺博客

    目录 一.Alpha 阶段认领的任务 二.明日成员的任务安排 三.整个项目预期的任务量 四.敏捷开发前的感想 五.团队期望 一.Alpha 阶段认领的任务 陈起廷 任务 预计时间 日记天气.心情选择 ...

  8. Shell编程—结构化命令

    1使用if-then语句 f-then语句有如下格式. if command then commands fi bash shell的if语句会运行if后面的那个命令.如果该命令的退出状态码是0(该命 ...

  9. neighbor和neigh_modify(转载)

    (转载:http://blog.sina.com.cn/s/blog_b48a7ac30102w4mg.html###) 以下取自:http://simulation.haotui.com/viewt ...

  10. 接口测试 Mock 实战 | 结合 jq 完成批量化的手工 Mock

    本文霍格沃兹测试学院学员学习实践笔记. 一.应用背景 因为本章的内容是使用jq工具配合完成,因此在开始部分会先花一定的篇幅介绍jq机器使用,如果读者已经熟悉jq,可以直接跳过这部分. 先来看应用场景, ...