本次测试服务器为172.16.25.33

使用rman连接本地数据库

rman target /

在rman中执行启动与关闭的命令与sqlplus相同

在rman中执行sql语句

sql ‘需要执行的语句’;

也可以通过输入host进入主机执行系统命令然后exit退出主机页面再进入rman

整库的备份

backup database;

提示在非存档模式下无法备份

需要设置成归档模式步骤如下

非归档模式转换成归档模式

数据库创建过程中需要指定归档和非归档模式,如果选择的是非归档模式,可以在数据库创建完成后 手工改变成归档模式,具体操作步骤如下。

(1 )关闭数据库:

shutdown immediate;

(2 )启动数据库到 mount 状态:

startup mount;

(3 )修改数据库归档模式:

alter database archivelog;

(4 )启动数据库:

alter database open;

(5 )定义归档位置,也就是归档日志保存路径:

alter system set log_archive_dest_1="location=/home/oracle/app/oracle/arch/orcl" scope=both;

(6 )确认配置生效:

archive log list; 

再次执行全库备份

默认备份位置为

/home/oracle/app/flash_recovery_area/ORCL/backupset

下面以日期生成一个文件夹

真的备份操作系统指定备份集的存储位置,最简单的方式是在执行backup命令的时候指定备份段的路径

backup database format '/home/oracle/rman_backup/bak_%U';

表空间的备份

只要实例启动并处于加载状态,无论数据库是否打开,都可以在rman中对表空间进行备份.例如备份users表空间

同样可以指定format参数显式自定义备份片段名称

通过 list backup of tablespace users;查看一下备份

从输出的信息中显示,users表空间存在多份备份,因为前面执行过全库备份

删除备份

delete backupset 6;

要求输入yes确认

8.3.3数据文件的备份

  有两种方式指定数据文件的名称(即数据文件的详细路径)和FILE_ID.这两项信息都可以通过数据字典DBA_DATA_FILES查询

select file_id,file_name from dba_data_files;

PS:实际上在整库备份操作和list操作时都显示了数据文件的文件名称和序号

备份USERS表空间的数据文件

backup datafile '/home/oracle/app/oradata/orcl/users01.dbf';

PS:使用backup datafile指定数据文件的备份既可以指定datafile名称也可以指定file_id

如果要查看指定数据文件的备份,可以用如下命令

list backup of datafile n;  n值指定数据文件的序号

8.3.4控制文件的备份

backup current controlfile;

执行backup命令指定include current controlfile如

backup database include current controlfile;

甚至在备份控制文件的时候也可以包含控制文件

backup current controlfile include current controlfile;

备份system表空间也会触发控制文件的备份

通过configure命令将controlfile autobackup置为on

configure controlfile autobackup on;

当autobackup被置为on时,rman做任何的备份操作,都会自动对控制文件做备份.

如果要查看备份的控制文件,可以使用以下命令

list backup of controlfile;

8.3.5归档文件的备份

  归档日志对于数据库介质恢复相当关键,其虽然不像控制文件一旦损坏则数据库马上崩溃,但重要性丝毫不减,只要拥有归档日志文件

,就能确保我们将数据库恢复到备份之后的任意时刻

backup archivelog all;

8.3.6初始化参数文件的备份

  通常在备份控制文件时,rman也会自动备份服务器端的初始化参数文件,并置于控制文件相同的备份片段中.由此极少单独对spfile进行

备份,如果确实需要备份使用backup spfile即可

8.3.7对备份集进行备份

  备份集也能备份

  备份所有备份集

  backup backupset all;

  备份指定备份集

  backup backupset n;

8.4RMAN命令知多少

8.4.1显示rman默认配置-show命令

#default代表使用默认配置没有修改过

8.4.2列出备份信息

  列出数据库所有备份信息

  list backup

  列出备份的控制文件信息

  list backup of controlfile;

  列出指定数据文件的备份信息

   list backup of datafile 1;

  列出指定表空间的备份信息

  ist backup of tablespace 'system';

  列出所有备份的归档文件信息

   list backup of archivelog all;

  列出某个设备上的所有信息

   list device type disk backup;

  列出当前数据库的所有归档

   list archivelog all;

  列出所有无效备份

   list expired backup;

8.4.3删除备份

  用于删除rman备份记录及相应的物理文件.当使用rman执行备份操作时,会在rman资料库中生成rman的备份记录,默认情况下rman备份记录

会被存放在目标数据库的控制文件中,如果配置了恢复目录(Recovery Catalog),那么该备份记录也会被存放到恢复目录中

  删除过期备份

  delete obsolete;

  删除无效备份

  delete expired backup;

  删除expired副本

  delete expired copy;

  删除所有备份集

  delete backup;

  删除所有映像副本

  delete copy;

8.4.4报表显示-report命令

  report命令主要用于当前备份信息的分析,如那些备份已过期,那些文件该备份,那些备份不可用

那些备份可以删除

  查看7天前的数据库模式

  report schema at time 'sysdate-7';

PS:查看模式信息必须了解到catalog数据库

  查看所有需要的备份

  report need backup;

  查看指定的表空间是否备份

  report need backup tablespace system;

  查看过期备份

  report obsolete;

8.4.5执行检查-crosscheck命令

  crosscheck命令用来检查备份或者归档物理文件的状态,如果物理文件存在,并且控制文件(恢复记录)中有匹配记录,则标记该对象为avilable(有效),如果文件不存在了,则标记对象状态为expired(无效)

  crosscheck不会主动删除文件(没有这个功能),它只是修改控制文件中对应记录的标记状态,因此如果要删除哪些expired记录,还是的手动通过delete expired命令进行.

  检查所有归档文件

  crosscheck archivelog all;

  检查所有备份集

  crosscheck backup; 

8.4.5修改状态-change命令

  change命令可以用来修改备份文件或者归档文件的状态,不是指物理文件,而是这些文件在控制文件(或恢复目录)中记录的状态,状态又两种available(可用),和unacaiable(不可用)

  修改指定备份集不可用

  change backupset 24 unavailable;

8.5RMAN备份进阶篇

  8.5.1是否选择增量备份

  虽然说用backup命令生成的备份集中只备份了那些使用了的数据块,备份集实际大小已经比目标数据库小了很多.不过对于修改不是很频繁但数据文件体积较大的的数据库,在执行备份的时候

希望有一种功能,备份时只备份那些修改过的数据,这样一来备份集就会小很多.增量备份功能正是满足这一功能而出现的.

  建立增量备份非常简单,实质就是指定一个参数incremental level=n(n最大不超过4),0级备份相当于数据库的完整备份

  建立级别为0的全库备份

  backup incremental level=0 database;

 PS:如果没有先建立0级备份直接使用backup incremental level=1 database;命令建立级别为1的增量备份则会先建立级别为0的全量备份再建立增量备份

  RMAN提供了两种增量备份的类型:DIFFERENTIAL(差异)和CUMULATIVE(累积),这两种增量类型在创建备份集时的算法是不一样的.默认情况是差异备份,如果要建立累积备份需要在建立备份是时候指定CUMULATIVE

  backup incremental level=2 cumulative database;

  

  

Oracle涂抹oracle学习笔记第8章RMAN说,我能备份的更多相关文章

  1. Oracle涂抹oracle学习笔记第9章RMAN说,我能恢复

    RMAN中的恢复对应两个操作:数据库修复(restore)和数据库恢复(recover) 数据库修复(restore):是指利用备份集的数据文件来替换已经损坏的数据库文件或者将其恢复到一个新的位置.R ...

  2. Oracle教程之学习笔记

    Oracle教程之学习笔记... ----------------------------------- Oracle教程:---学习笔记: ============================= ...

  3. JVM学习笔记-第六章-类文件结构

    JVM学习笔记-第六章-类文件结构 6.3 Class类文件的结构 本章中,笔者只是通俗地将任意一个有效的类或接口锁应当满足的格式称为"Class文件格式",实际上它完全不需要以磁 ...

  4. Stealth视频教程学习笔记(第二章)

    Stealth视频教程学习笔记(第二章) 本文是对Unity官方视频教程Stealth的学习笔记.在此之前,本人整理了Stealth视频的英文字幕,并放到了优酷上.本文将分别对各个视频进行学习总结,提 ...

  5. Stealth视频教程学习笔记(第一章)

    Stealth视频教程学习笔记(第一章) 本文是对Unity官方视频教程Stealth的学习笔记.在此之前,本人整理了Stealth视频的英文字幕,并放到了优酷上.本文将分别对各个视频进行学习总结,提 ...

  6. 20145330《Java学习笔记》第一章课后练习8知识总结以及IDEA初次尝试

    20145330<Java学习笔记>第一章课后练习8知识总结以及IDEA初次尝试 题目: 如果C:\workspace\Hello\src中有Main.java如下: package cc ...

  7. java JDK8 学习笔记——第16章 整合数据库

    第十六章 整合数据库 16.1 JDBC入门 16.1.1 JDBC简介 1.JDBC是java联机数据库的标准规范.它定义了一组标准类与接口,标准API中的接口会有数据库厂商操作,称为JDBC驱动程 ...

  8. CSS3秘笈第三版涵盖HTML5学习笔记1~5章

    第一部分----CSS基础知识 第1章,CSS需要的HTML HTML越简单,对搜索引擎越友好 div是块级元素,span是行内元素 <section>标签包含一组相关的内容,就像一本书中 ...

  9. 《DOM Scripting》学习笔记-——第三章 DOM

    <Dom Scripting>学习笔记 第三章 DOM 本章内容: 1.节点的概念. 2.四个DOM方法:getElementById, getElementsByTagName, get ...

随机推荐

  1. 在C语言中实现面向对象(2)

    C语言是结构化和模块化的语言,它是面向过程的.但它也可以模拟C++实现面向对象的功能.那么什么是对象呢?对象就是一个包含数据以及于这些数据有关的操作的集合,也就是包含数据成员和操作代码(即成员函数). ...

  2. nodejs基础 -- 模块系统

    为了让nodejs的文件可以相互调用,nodejs提供了一个简单的模块系统. 模块:是nodejs应用程序的基本组成部分,文件和模块一一对应.即,一个nodejs文件就是一个模块,这个文件可能是jav ...

  3. nodejs基础 -- 交互式解析器(REPL)

    ------------类似在浏览器中调试js代码----------------------- Node.js REPL(交互式解释器) Node.js REPL(Read Eval Print L ...

  4. Android学习CursorWrapper与Decorator模式 (转至http://www.cnblogs.com/bastard/archive/2012/05/31/2527944.html)

    一 Decorator模式 意图: 动态的给一个对象添加一些额外的职责.就增加功能来说,Decorator模式相比生成子类更为灵活. 动态的给一个对象,而不是对整个类添加额外职责,说明此模式将采用的结 ...

  5. c++ 参赛设置

    void report(LogWriter& lw); 代表引用原对象 void report(LogWriter lw); 代表重新拷贝构造一个对象

  6. 利用JQuery直接调用asp.net后台的简单方法

    利用JQuery的$.ajax()可以很方便的调用asp.net的后台方法. [WebMethod]   命名空间 1.无参数的方法调用, 注意:1.方法一定要静态方法,而且要有[WebMethod] ...

  7. win7笔记本电脑怎么做wifi热点

    win7设置wifi热点后非常方便,可以给其他笔记本和手机之类支持无线上网的移动设备使用,接下来请看超简单的详细设置方法. 方法/步骤 1 第一步先打开“控制面板” 2 点击“网络和Internet” ...

  8. Android UI优化——include、merge 、ViewStub

    在布局优化中,Androi的官方提到了这三种布局<include />.<merge />.<ViewStub />,并介绍了这三种布局各有的优势,下面也是简单说一 ...

  9. iOS打电话、发短信、发邮件功能开发

    本文转载至 http://www.lvtao.net/ios/506.html 今天把APP里常用小功能 例如发短信.发邮件.打电话.全部拿出来简单说说它们的实现思路. 1.发短信实现打电话的功能,主 ...

  10. Visual Studio 2013 如何在停止调试Web程序后阻止IIS Express关闭

    vs2013 调试项目的时候,当停止调试的时候,端口就被断了.之前以为是IIS那边的控制问题,但是其他并行的项目运行都没有出现这种情况. 最初也没在意,直到现在实在忍受不了了,每次重开也太烦了.就去各 ...