$ rman targer /
RMAN> show all; #查看rman中所有的配置
RMAN configuration parameters for database with db_unique_name ORCL are:
CONFIGURE RETENTION POLICY TO REDUNDANCY 1; # default
CONFIGURE BACKUP OPTIMIZATION OFF; # default
CONFIGURE DEFAULT DEVICE TYPE TO DISK; # default
CONFIGURE CONTROLFILE AUTOBACKUP OFF; # default
CONFIGURE CONTROLFILE AUTOBACKUP FORMAT FOR DEVICE TYPE DISK TO '%F'; # default
CONFIGURE DEVICE TYPE DISK PARALLELISM 1 BACKUP TYPE TO BACKUPSET; # default
CONFIGURE DATAFILE BACKUP COPIES FOR DEVICE TYPE DISK TO 1; # default
CONFIGURE ARCHIVELOG BACKUP COPIES FOR DEVICE TYPE DISK TO 1; # default
CONFIGURE MAXSETSIZE TO UNLIMITED; # default
CONFIGURE ENCRYPTION FOR DATABASE OFF; # default
CONFIGURE ENCRYPTION ALGORITHM 'AES128'; # default
CONFIGURE COMPRESSION ALGORITHM 'BASIC' AS OF RELEASE 'DEFAULT' OPTIMIZE FOR LOAD TRUE ; # default
CONFIGURE ARCHIVELOG DELETION POLICY TO NONE; # default
CONFIGURE SNAPSHOT CONTROLFILE NAME TO '/data/oracle/product/11.2.0/db_1/dbs/snapcf_orcl.f'; # default
RMAN>

CONFIGURE COMPRESSION ALGORITHM 'BASIC' AS OF RELEASE 'DEFAULT' OPTIMIZE FOR LOAD TRUE ; # default
表示默认压缩备份,使用BASIC算法。
修改默认压缩算法:
RMAN> CONFIGURE COMPRESSION ALGORITHM 'low';
new RMAN configuration parameters:
CONFIGURE COMPRESSION ALGORITHM 'low' AS OF RELEASE 'DEFAULT' OPTIMIZE FOR LOAD TRUE;
new RMAN configuration parameters are successfully stored
RMAN>

差异增量: 备份自上次备份依赖(全备或增备)变化过的块
累计增量:备份自上一次全备以来,变化过的所有块。

RMAN> backup incremental level 0 database; # level 0 就代表是全备
Starting backup at 15-NOV-17
.....
RMAN> backup incremental level 1 database; # level 1 就代表是差异备份,扫描所有块,根据对比时间戳,备份变化过的块
RMAN> backup incremental level 1 cumulative database; # 加cumulative,表示累计增量备份

rman可以只备份某个表空间,或某个数据文件;
RMAN> backup tablespace users; # 用rman只备份users的表空间
Starting backup at 15-NOV-17
using channel ORA_DISK_1
channel ORA_DISK_1: starting full datafile backup set
channel ORA_DISK_1: specifying datafile(s) in backup set
input datafile file number=00004 name=/data/oracle/oradata/orcl/users01.dbf
channel ORA_DISK_1: starting piece 1 at 15-NOV-17
channel ORA_DISK_1: finished piece 1 at 15-NOV-17
piece handle=/data/oracle/flash_recovery_area/ORCL/backupset/2017_11_15/o1_mf_nnndf_TAG20171115T225433_f0ro9b0n_.bkp tag=TAG20171115T225433 comment=NONE
channel ORA_DISK_1: backup set complete, elapsed time: 00:00:01
Finished backup at 15-NOV-17
RMAN>

控制文件自动备份:
RMAN> show all;
其中有一条:CONFIGURE CONTROLFILE AUTOBACKUP OFF; # default
改为:
RMAN> CONFIGURE CONTROLFILE AUTOBACKUP ON; # 这样就打开了控制文件的自动备份,当数据文件结构发生变化时,自动在后台把控制文件备份一下。

有一条命令:
CONFIGURE CONTROLFILE AUTOBACKUP FORMAT FOR DEVICE TYPE DISK TO '%F'; # default
指定了自动备份控制文件时,备份到哪里,备份出来的文件怎么命名。 其中'%F' 就是OMF里的一个格式符。 只要不申明往哪个路径备份,那么默认的都是备份到快速恢复区。

SQL> show parametar recover # 查看快速恢复区。
那么手动指定备份路径呢:
RMAN> backup database format='/u02/rmanbak/%s_%T_%d.dbf'; # 这样就手动指定了备份路径,备份到 /u02/rmanbak/
当然也可以手动修改RMAN的配置文件,指定默认备份的路径。但数据库恢复时,默认的找快速恢复区,所以手动改备份目录,恢复时,又要手动指定目录,原本可以自动实现的变成了手动。所以一般不建议去改。

多段备份:
# mkdir /u03 # 假设/u03下挂载了另一个存储
# chown -R oracle:oinstall /u03
# su - oracle
$ cd /u03
$ mkdir rmanbak
在备份时指定备份3份,并指定位置;
RMAN> backup copies 3 tablespace users format='/u01/app/oracle/%s_%T_%d.dbf','/u02/rmanbak/%s_%T_%d.dbf','/u03/rmanbak/%s_%T_%d.dbf';
这样就同时备份保存了3份。

镜像备份就是指,物理上copy,与用户管理的备份同理。

备份优化(OPTIMIZATION ON):
RMAN> show all;
其中有一条:
CONFIGURE BACKUP OPTIMIZATION OFF; # default
执行:
RMAN> CONFIGURE BACKUP OPTIMIZATION ON;
在备份时,能够自动判断并跳过一些不必要的备份数据,如只读的表空间。
举例:
RMAN> CONFIGURE BACKUP OPTIMIZATION ON; #开了备份优化后,
SQL> alter tablespace users read only;

RMAN> backup database format='/u03/rmanbak/%s_%T_%d.dbf'; #指定一个目录,好观察,第一遍执行,都会备份
RMAN> backup database format='/u03/rmanbak/%s_%T_%d.dbf'; # 第二遍执行,发现也备份了 user01.dbf,备份一遍不稳妥,所以自动备份了双份。
RMAN> backup database format='/u03/rmanbak/%s_%T_%d.dbf'; # 第三遍执行,会发现没有备份user01.dbf,
提示中描述: skipping datafile 4: already backed up 2 time(s).

保留策略:
RMAN> show all;
其中有一条:CONFIGURE RETENTION POLICY TO REDUNDANCY 1; # default

oracle命令7 -rman命令的更多相关文章

  1. Windows平台使用RMAN命令自动删除Oracle过期归档日志的方法

    自动删除Oracle过期归档日志的思路如下: 1.编写自动执行的bat脚本文件: 2.Windows设置定期执行计划 OracleArchLogClear.bat D:/Oracle/product/ ...

  2. oracle:通过shell来运行rman命令

    每次都手工输入一批rman命令来进行备份等操作是很繁琐的事,有什么简便的方法吗?可以的,你可以把这批rman命令写在 shell命令里面,需要的时候,运行一下sh即可.下面是一个简单的实例: RMAN ...

  3. 【Oracle】 RMAN命令汇总

    RMAN命令汇总 2013年写了关于RMAN命令的汇总,先转换为MD文档,温故而知新. 1.进入RMAN 进入本地数据库 [oracle@oracle-n1 ~]$ rman target / 进入远 ...

  4. RMAN命令

    一.启动.关闭数据库 在RMAN中执行关闭和启动数据库的命令与SQL环境下一模一样.当然,在执行之前,你需要先连接到目标数据库,如例: C:\Documents and Settings\Admini ...

  5. RMAN命令DELETE操作总结

    本篇总结一下RMAN命令中的DELETE操作,DELETE命令用于删除RMAN备份记录以及相应的物理文件. To delete physical backups and copies as well ...

  6. RMAN命令总结

    一,RMANR 连接到库 1),连接本地数据库 a,如果本地有多少实例,则需要设置环境变量ORACLE_SID,  windows 平台: set ORACLE_SID= INSTANACE NAME ...

  7. rman命令详解(三)

    1. Report 命令用户判断数据库的当前可恢复状态和提供数据库备份的特定信息1.1 指定最近没有备份的数据文件查询3天内没有备份过的表空间,可以用如下命令:RMAN> report need ...

  8. RMAN命令详解和常用汇总

    RMAN命令详解和常用汇总转摘汇集,日后使用本文链接:https://blog.csdn.net/EVISWANG/article/details/50448370http://blog.itpub. ...

  9. Oracle数据库导入导出命令总结

    Oracle数据导入导出imp/exp就相当于oracle数据还原与备份.exp命令可以把数据从远程数据库服务器导出到本地的dmp文件,imp命令可以把dmp文件从本地导入到远处的数据库服务器中.利用 ...

  10. Oracle数据库导入导出命令总结 (详询请加qq:2085920154)

    分类: Linux Oracle数据导入导出imp/exp就相当于oracle数据还原与备份.exp命令可以把数据从远程数据库服务器导出到本地的dmp文件,imp命令可以把dmp文件从本地导入到远处的 ...

随机推荐

  1. React框架学习基础篇-HelloReact-01

    一直想掌握一门前端技术,于是想跟着张天宇老师学习,便开始学习React,以此来记录一下我的学习之旅. 学习一门新的技术首先是去官网看看,React官网链接是[https://zh-hans.react ...

  2. 今天做php缓存发现一个批量替换非法关键词的php代码

    <?php $badwords = array('aa', 'bb'); // 敏感词数组 $str = "aa阿斯顿克拉拉斯柯达bb阿萨达速度"; $result = fi ...

  3. 图扑 AR 技术应用与管理:施工建造、机柜扫描、办公室导航解决方案

    随着科技的不断革新和创新,越来越多的行业开始迎来数字化时代的变革.建筑行业作为人类历史上最重要的产业之一,在数字化转型方面同样也在不断推进.图扑软件结合 AR 技术的应用,为建筑行业带来了更加便捷高效 ...

  4. hexo博客生成报错YAMLException: can not read a block mapping entry

    报错信息: YAMLException: can not read a block mapping entry; a multiline key may not b --- title: [转]--I ...

  5. Llama2 论文中译版——开放式基础和微调聊天模型

    Llama 2:开放式基础和微调聊天模型 写在前头 因为最近一直在使用 LLM 工具,所以在学习 Llama 2:开放式基础和微调聊天模型 这篇论文的期间,顺手将内容翻译了过来. 整片译文是由 Cha ...

  6. Vue通过v-modal实现子组件通讯

    1.在props设置属性value props: { value: { type: Object, default: {} } } 1.设置data数据,接收value,在mounted或create ...

  7. python:map函数

    参考示例 def test(x): return x * 2 mylist = [1, 2, 3, 4, 5] result = list(map(test, mylist)) print(resul ...

  8. js高级之内存管理与闭包

    javacript中的内存管理 javascript中不需要我们手动去分配内存,当我们创建变量的时候,会自动给我们分配内存. 创建基本数据类型时,会在栈内存中开辟空间存放变量 创建引用数据类型时,会在 ...

  9. [k8s]使用私有harbor镜像源

    前言 在node上手动执行命令可以正常从harbor拉取镜像,但是用k8s不行,使用kubectl describe pods xxx 提示未授权 unauthorized to access rep ...

  10. openssh傻瓜式一键自动化更新脚本(ubuntu系统)

    鉴于openssh升级太过麻烦,这里自制了一个openssh自动化升级脚本,以root权限一键运行脚本即可: sh openssh-update.sh 注意:这里只使用于ubuntu系统,centos ...