本次测试服务器为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. 用 #include “filename.h” 格式来引用非标准库的头文件

    用 #include “filename.h” 格式来引用非标准库的头文件(编译器将 从用户的工作目录开始搜索) #include <iostream> /* run this progr ...

  2. 与其他Javascript类库冲突解决方案

    $(document).ready(function() { var $jq = jQuery.noConflict(); $jq('#id').show(); });

  3. openal 基础知识2

    三枚举扩展包(enumeration extension,“ALC_ENUMERATION_EXT”) 开发者可以通过这个extension得到一个字符串列表,区分不同的渲染/捕捉设备.OpenALr ...

  4. shell脚本程序中循环、判断语句的介绍

    shell的循环主要有3种,for,while,until shell的分支判断主要有2种,if,case 一,for循环 C/C++ Code复制内容到剪贴板 #!/bin/bash for fil ...

  5. 关于NoSQL与SQL的区别

    简单说来:sql是关系型数据库的结构化查询语言,而nosql,一般代指菲关系型数据库,sql语句就不能用来,不过有些有leisql的查询语言,且nosql数据库没有统一的查询语言. 相关参考文章阅读: ...

  6. “浪潮杯”山东省第五届ACM大学生程序设计竞赛(总结贴)

    第一次參加省赛有点小激动,尽管是作为打星队參赛,但心情却是上下起伏. 5月9号晚上11点多到威海,有点略冷.可是空气比淄博好多了,大家到了旅馆的时候都非常晚了,抱怨了一下三星级的酒店的待遇,喝杯咖啡早 ...

  7. easyui------添加中文文件

    添加中文文件: 官网地址:http://www.jeasyui.net/download/去jquery-easyui官网下载的文件里面找到easyui-lang-zh_CN.js文件,添加入代码里面 ...

  8. ios 6以后,UILabel全属性

    一.初始化 1 UILabel *myLabel = [[UILabel alloc] initWithFrame:CGRectMake(40, 40, 120, 44)]; 2       3 [s ...

  9. Linux上Nginx部署配置--二级域名配置

    http://www.cnblogs.com/yaunion/archive/2013/03/16/2962385.html http://blog.csdn.net/LBinin/article/d ...

  10. Bash Shell 里的各种括号

    天在 SegmentFault 上看到又有人问起关于Shell里各种括号的问题.对于很多玩Shell的人,括号是个很尴尬的问题,用起来没问题,说起来不明白,我在这里总结一下Bash Shell几种括号 ...