• 配置基于时间的备份保留策略

RMAN> CONFIGURE RETENTION POLICY TO RECOVERY WINDOW OF 7 DAYS;

  • 恢复spfile

RMAN> restore spfile from '/bk/xxxxxx'; 如果在Oracle10g里这里就是控制文件,因为在备份控制文件的时候会自动备份参数文件,但是在oracl11g里我做的时候控制文件找不到    所以要从另外一个文件里找到的参数文件恢复出来的;这一步成功在之后你的$ORACLE_HONE/dbs/下已经有了二进制参数文件和控制文件了,但是这个参数文件是生产库的参数文件跟你的服务器上所对应的目录不一定一样,所以你要修改参数文件。

  • 开始恢复control file,进而得到备份集的信息:

RMAN> restore controlfile from '/u02/20190324_HIS_25210_1.ctl';

  • 列出备份集:

RMAN> list backup of database;

  • 删除过期的备份介质.
RMAN> delete obsolete(nopormt指定无需确认立即删除)
  • RMAN的备份记录中依然存在,清除这些信息。
RMAN> crosscheck backup;
  • 删除过期的备份信息。
 
RMAN> delete expired backup;
  • 指定还原的路径:

catalog start with '/backup/his/';

  • 指定还原的文件名:

alter database mount;
set newname for datafile 1 to "/ora/u01/data/users.dbf";
set newname for datafile 2 to "/ora/u01/data/undotbs1.dbf";
set newname for datafile 3 to "/ora/u01/data/sysaux01.dbf";
set newname for datafile 4 to "/ora/u01/data/system01.dbf";
set newname for datafile 5 to "/ora/u01/data/undotbs2.dbf";
set newname for datafile 6 to "/ora/u01/data/hisdata.dbf";

  • 数据文件不同路径的还原:

run{
set newname for database to '/ora/u00/oracle/oradata/his/%b';
restore database;
switch datafile all;

recover database;
      alter database open;
}

  • 不完全恢复
     不完全恢复有一个核心要领需要牢记:不完全恢复影响的是整个数据库,不能只对数据库的一部分执行不完全恢复。不完全恢复使用的方法通常有:基于时间、SCN、日志序列、还原点或基于删除的恢复。
      $ rman target /  
     RMAN> startup mount
     RMAN>run
      {
      set until time "to_date('07/01/2015 15:00:00', 'mm/dd/yyyy hh24:mi:ss')";
      restore database;
      recover database;
      alter database open;
      }
 
 允许数据不一致

RMAN> recover database until cancel;

恢复数据到某个序列号

RMAN> recover database until sequence 46101 thread 1;

查看日志文件

[oracle@histest ~]$ cd $ORACLE_BASE
[oracle@histest oracle]$ cd diag/rdbms/
his/ histest/ unknown/
[oracle@histest oracle]$ cd diag/rdbms/his/
HIS/ i_1.mif
[oracle@histest oracle]$ cd diag/rdbms/his/HIS/trace/
[oracle@histest trace]$ tail -200f alert_HIS.log

===========================以下为后台还原数据库===============================

数据库还原脚本:

rman target / <<EOF
run{
allocate channel c1 device type disk;
allocate channel c2 device type disk;
allocate channel c3 device type disk;
allocate channel c4 device type disk;
set newname for database to '/ora/u00/oracle/oradata/his/%b';
restore database;
RECOVER database;
sql 'alter database open resetlogs';
sql 'alter database open';
release channel c1;
release channel c2;
release channel c3;
release channel c4;
}
EOF
~

添加权限

[root@histest oracle]# chown oracle:oinstall rman.sh
[root@histest oracle]# chmod 775 rman.sh

查看数据库状态为mount

[root@histest ~]# su - oracle
[oracle@histest ~]$ su - oracle
Password:
[oracle@histest ~]$ sqlplus / as sysdba

SQL*Plus: Release 11.2.0.4.0 Production on Thu Apr 11 16:04:53 2019

Copyright (c) 1982, 2013, Oracle. All rights reserved.

Connected to:
Oracle Database 11g Enterprise Edition Release 11.2.0.4.0 - 64bit Production
With the Partitioning, OLAP, Data Mining and Real Application Testing options

SQL> select instance_name,status from v$instance;

INSTANCE_NAME STATUS
---------------- ------------
HIS MOUNTED

开启后台执行脚本

[root@histest ~]# su - oracle
[oracle@histest ~]$ /home/oracle/rman.sh >> /home/oracle/out.log 2>&1 &

踩坑一例:

在做RMAN还原时,总提示找不到某个日志文件,致使还原不成功。

最后经过分析,原来是RAC集群里日志保留的时间过短,数据库太大,在做RMAN全备份时,当全备份做完,日志文件已部分被清,导致备份集里的备份的日志文件在做RMAN还原时找不到日志文件。

解决办法:由于库太大,做一次还原时间太长,选择根据SCN号做一次增备和控制文件备份,再进行还原的最省时间策略。

Rman常用命令的更多相关文章

  1. RMAN常用命令汇总

    RMAN是Oracle数据库备份管理中必须用到的管理工具.它的操作方式有很多种,我整理了一些常用的操作命令,汇总起来,以方便工作. (miki西游 @mikixiyou 文档,原文链接: http:/ ...

  2. RMAN常用命令汇总!

    进入RMAN:$ rman target sys/oracle@orcl   --远程连接到rman$ rman target sys/oracle@orcl @backup_db.ram   --远 ...

  3. Oracle之rman常用命令及维护(51CTO风哥rman课程)

    list 查看数据库备份的信息 查询数据库对应物 list incarnation; list backup summary; 列出当前备份信息及汇总 B是备份 F是全备 A是归档 第三个A是是否有效 ...

  4. RMAN常用备份恢复命令汇总

    RMAN命令 1.独立命令  RMAN>shutdown immediate  RMAN>startup  RMAN>backup format 'd:\backup\%d_%s.b ...

  5. RMAN主要命令 show,list,crosscheck,delete详解

    Oracle RMAN 的 show,list,crosscheck,delete命令整理  Oracle RMAN 的 show,list,crosscheck,delete命令整理 1.SHOW命 ...

  6. 【BBED】bbed常用命令

    [BBED]bbed常用命令         一.1  相关知识点扫盲 BBED(Oracle Block Browerand EDitor Tool),用来直接查看和修改数据文件数据的一个工具,是O ...

  7. Linux 常用命令(持续补充)

    常用命令: command &:将进程放在后台执行 ctrl + z:暂停当前进程 并放入后台 jobs:查看当前后台任务 bg( %id):将任务转为后台执行 fg( %id):将任务调回前 ...

  8. LVM基本介绍与常用命令

    一.LVM介绍LVM是 Logical Volume Manager(逻辑卷管理)的简写,它是Linux环境下对磁盘分区进行管理的一种机制LVM - 优点:LVM通常用于装备大量磁盘的系统,但它同样适 ...

  9. Linux学习笔记(一):常用命令

    经过统计Linux中能够识别的命令超过3000种,当然常用的命令就远远没有这么多了,按照我的习惯,我把已经学过的Linux常用命令做了以下几个方面的分割: 1.文件处理命令 2.文件搜索命令 3.帮助 ...

随机推荐

  1. [LeetCode] Expressive Words 富于表现力的单词

    Sometimes people repeat letters to represent extra feeling, such as "hello" -> "he ...

  2. swust oj 972

    统计利用先序遍历创建的二叉树的宽度 1000(ms) 10000(kb) 2938 / 6810 利用先序递归遍历算法创建二叉树并计算该二叉树的宽度.先序递归遍历建立二叉树的方法为:按照先序递归遍历的 ...

  3. | 线段树-地平线horizon

    [题目描述]:在地平线上有n个建筑物.每个建筑物在地平线上可以看成一个下边界和地平线重合的矩形.每个建筑物有三个描述(Li ,Ri,Hi),分别表示该建筑物的左边界,右边界,高度.输出输出这些建筑物在 ...

  4. String、StringBuilder以及StringBuffer

    博客地址:https://www.cnblogs.com/dolphin0520/p/3778589.html

  5. lcr电桥浅谈

    此图告知,现代的lcr电桥使用的都是虚地,阻抗很高. 系统采用的鉴相器比较简单,是检半个正弦基波(RMS有效值积分),可以有效抵御偶次基波. 倒不如直接使用运放电容移相,比较采样法直接采样最高点. 此 ...

  6. Python 学习笔记7 条件语句 If

    Python中条件语句if 是通过一条或者多条的执行语句的结果,来判断是否执行其包含的代码块. 通常会配合else.elif一起使用,达到根据条件进行多个代码块的执行操作. 简单的if score = ...

  7. vue深度监控数据改变,缓存数据到本地

    项目效果图: var vm = new Vue({ el:'#app', data:{ students:[], }, watch:{ students:{ handler(){ localStora ...

  8. 【EBook】-NO.161.微服务.1 -【微服务架构与实践】

    Style:Mac Series:Java Since:2018-09-10 End:2018-09-10 Total Hours:1 Degree Of Diffculty:5 Degree Of ...

  9. 实验吧MD5之守株待兔解题思路

    解题链接 http://ctf5.shiyanbar.com/misc/keys/keys.php 解题思路 首先我们多打开几次解题链接,发现系统密钥大约在一秒钟左右变一次,所以联想到时间戳. 解题过 ...

  10. httpappplication 和 httpmodule 的理解(转载,写的很好)

    第一部分:转载自Artech  IIS与ASP.NET管道 ASP.NET管道 以IIS 6.0为例,在工作进程w3wp.exe中,利用Aspnet_ispai.dll加载.NET运行时(如果.NET ...