备份恢复之RMAN

----备份
物理备份:rman
逻辑备份:exp+expdp
热备和冷备
一致性备份:(都是冷备份)备份的数据文件和控制文件拥有相同的scn,数据库一正常方式关闭且数据未处于打开状态
对于非归档数据库左右一致性备份才有用。
不一致性备份:数据库是read write或者shutdown abort,不一致性备份不一定是热备份
表空间备份,必须满足以下条件之一:
数据库处于归档模式:
表空间只读或者脱机状态
归档日志备份:
前提是数据库不仅是归档状态还是force_logging状态,其实归档本身就是另一种形式的备份
----恢复
实例恢复:两个阶段(缓存恢复+事务恢复),这种恢复由oracle自动进行。
介质恢复:首先将数据库恢复到备份时状态,然后通过应用重做日志恢复。
恢复方式:
完全恢复和不完全恢复(resetlogs)
rman备份
无论是备份还是恢复都是需要启动实例加载数据库
rman两种不同类型的备份:镜像复制和备份集(只读数据库中已使用的块)
rman是oracle数据软件的备份恢复工具,有两种方法调用。一种是类似Windows的通过鼠标操作的图形化界面,还有就是类似DOS的命令行方式,下面都是基于命令行模式的。
连接到本地库:
[oracle@milk11G ~]$ rman target /                //连接本地数据库
[oracle@milk11G ~]$ rman target db1/dbm@test1     //连接远程数据库
Recovery Manager: Release 11.2.0.4.0 - Production on Wed Jun 28 14:43:30 2017
Copyright (c) 1982, 2011, Oracle and/or its affiliates.  All rights reserved.
connected to target database (not started)
RMAN> startup;                                   //可以通过rman启动和关闭数据库

Oracle instance started
database mounted
database opened

Total System Global Area     889389056 bytes
Fixed Size                     2258360 bytes
Variable Size                583010888 bytes
Database Buffers             297795584 bytes
Redo Buffers                   6324224 bytes

RMAN>  SQL "alter system switch logfile";                     //执行sql语句
RMAN> sql "select * from dual";                        //select语句不行
RMAN> SQL "alter system set undo_retention=200 scope=both";         //也可以通过rman修改数据库参数
using target database control file instead of recovery catalog
sql statement: alter system set undo_retention=200 scope=both
RMAN> backup database;                         //备份整个数据库
RMAN> backup database format '/home/oracle/back_%U';                 //备份整个数据库并指定目录
RMAN> list backup of database;                    //列出所有备份
RMAN> backup tablespace tbs_data format '/home/oracle/tbs_%U';       //备份表空间tbs_data
RMAN> list backup of tablespace tbs_data;             //列出表空间tbs_data所有的备份集
RMAN> delete backupset 11;                //删除指定备份集
RMAN> list backup of datafile 5;              //列出5号数据文件的所有备份
RMAN> list backup of controlfile;               //列出控制文件的所有备份
RMAN> configure controlfile autobackup on;           //设置控制文件自动备份
RMAN> backup spfile format '/home/oracle/spfile_%U';     //备份spfile
RMAN> show all;            //显示rman的默认配置
RMAN> show controlfile autobackup;       //显示控制文件自动备份的配置
RMAN> delete obsolete;      //删除过期备份
RMAN> delete expired backup;       //删除无效备份
RMAN> delete expired copy;  //删除expired副本
RMAN> report obsolete; //查看你过期备份
RMAN> crosscheck backup;   //检查所有备份集
RMAN> change backup of tablespace tbs_data unavailable;    //修改表空间tbs_data状态为unavailable
RMAN> backup incremental level=0 database format '/home/oracle/milk0_%U';  //建立增量级别为0的全库备份
RMAN> backup incremental level=1 database;(增量备份开启块跟踪)   //建立增量级别为1的备份
rman备份相关的动态视图

v$archived_log本视图是归档重做日志信息
v$backup_piece显示备份片段信息
v$backup_corruption显示备份集中发现的坏块
v$backup_set本视图显示当前创建的备份信息


rman恢复
数据修复(restore)是指利用备份集中的数据文件来替换掉已有的数据文件,或者恢复到一个新的位置。
数据恢复(recover)是指应用所有的重做日志,将数据库恢复到崩溃前的状态,会装应用部分redo,数据库恢复到指定时间点
执行数据库介质恢复的流程:
RMAN>startup mount;                    //数据库启动到mount状态进行恢复
RMAN>restore database;             
RMAN>recover database;           
RMAN>alter database open;  
其他相关命令
RMAN>restore controlfile from '/home/oracle/backcon_1_1'; //重指定的备份集中恢复控制文件
RMAN>restore spfile from autobackup;   //将spfile恢复到默认路径
RMAN>restore spfile to '/home/oracle/milk1.ora' from autobackup;        //将spfile恢复到指定路径
  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值