一,环境准备

   全备脚本:

 export TMP=/tmp
export TMPDIR=$TMP
export ORACLE_BASE=/u01
export ORACLE_SID=prod
export ORACLE_HOME=/u01/oracle/db_1
export ORACLE_TERM=xterm
export PATH=$PATH:$ORACLE_HOME/bin:$HOME/bin
export LANG=en_US
rman target / log /u01/backup/rman_full.log append<<EOF
run
{allocate channel c1 type disk;
allocate channel c2 type disk;
backup database filesperset format '/u01/backup/full_%d_%T_%s_%p';
sql 'alter system archive log current';
sql 'alter system archive log current';
sql 'alter system archive log current';
backup archivelog all format '/u01/backup/arch_%d_%T_%s_%p' delete input;
backup current controlfile format '/u01/backup/ctl_%d_%T_%s_%p';
crosscheck backup;
crosscheck archivelog all;
delete noprompt obsolete;
delete noprompt expired backup;
delete noprompt expired archivelog all;
}
EOF

   增备脚本:

 export TMP=/tmp
export TMPDIR=$TMP
export ORACLE_BASE=/u01
export ORACLE_SID=prod
export ORACLE_HOME=/u01/oracle/db_1
export ORACLE_TERM=xterm
export PATH=$PATH:$ORACLE_HOME/bin:$HOME/bin
export LANG=en_US
rman target / log /u01/backup/rman_full.log append<<EOF
run
{allocate channel c1 type disk;
allocate channel c2 type disk;
sql 'alter system archive log current';
sql 'alter system archive log current';
sql 'alter system archive log current';
backup archivelog all format '/u01/backup/arch_%d_%T_%s_%p' delete input;
backup current controlfile format '/u01/backup/ctl_%d_%T_%s_%p';
crosscheck backup;
crosscheck archivelog all;
delete noprompt expired backup;
delete noprompt expired archivelog all;
}
EOF

   实际环境..周日全备,其他增备

   周日全备数据:

   运行全备脚本.........

   周一增备:

   这天的数据写入特别多........

   create table test as select * from tab;

   create table a as select * from dba_users; 

   create table scott.emp1 as select * from scott.emp where rownum < ;

   select * from scott.emp1;
   .....未完待续
不停的写.....写......写..... 晚上增备了 sh 增备脚本.sh

    数据故障模拟:

      又一次删除:

二,故障发现于处理

  第一步: 首先准备

   进入数据库....

   关闭数据库:>>>> shutdown abort

    启动到nomount状态

    进入备份目录查看最新的备份

    进入rman >>> rman target /

  第二步: 恢复控制文件,启动到数据库mount状态

     restore controlfile from '/u01/backup/ctl_PROD_20190301_724_1';

  第三步:  

   找到最新的归档集并注册

RMAN> list backup;
...... RMAN> catalog backuppiece '/u01/backup/arch_PROD_20190301_719_1';
RMAN> catalog backuppiece '/u01/backup/arch_PROD_20190301_721_1';
RMAN> catalog backuppiece '/u01/backup/arch_PROD_20190301_722_1';
RMAN> catalog backuppiece '/u01/backup/arch_PROD_20190301_723_1';

  第四步:

   恢复数据

  第五步:

    恢复归档数据

 RMAN> recover database;

  第六步:

    打开数据库到resetlogs模式(重置redo)

RMAN> alter database open resetlogs;

  第七步:

    重新备份数据

    

oracle 备份恢复篇(二)---rman 增备恢复--不完全恢复的更多相关文章

  1. oracle 备份恢复篇(一)---rman

    一,rman介绍 RMAN(Recovery Manager)是随Oracle服务器软件一同安装的工具软件,它可以用来备份和恢复数据库文件.归档日志和控制文件,用来执行完全或不完全的数据库恢复.与传统 ...

  2. oracle 11.2.0.1 rman异机恢复 11.2.0.3(windows X64)

    问题原因: 误操作,需要时间点恢复. 备份情况:rman 备份,每天一次全备份,并且附带备份当天所有产生的archivelog,无expdp备份 恢复目标: 恢复到9号晚上21点数据 源系统:WIND ...

  3. oracle 备份恢复篇(三)---rman spfile的丢失

    一,环境准备 1, 拥有全备 数据 2, 查看spfile文件位置 SQL> SQL> SELECT NAME, VALUE, DISPLAY_VALUE FROM V$PARAMETER ...

  4. oracle 备份恢复篇(五)---rman 剩下控制文件和spfile

    一,环境准备 ❤ 拥有全量备份文件

  5. oracle 备份恢复篇(四)---rman 单个数据文件

    一,环境背景

  6. Oracle内存管理理论篇二

    目标 了解oracle内存管理方式 掌握ASMM管理方式 掌握AMM管理方式 监控内存使用 学习一个知识点时,最好先了解其历史.ORACLE近期的版本都对内存管理做了简化,从9i通过PGA_AGGRE ...

  7. Innobackupex MySQL 全备、增备及恢复

    简介: 在这之前都是通过 mysqldump 来备份数据库的,由于是逻辑备份,所以采用这种备份方式数据是很安全的,跨平台.版本都很容易. 凡事有利必有弊,逻辑备份在你数据库比较大时,备份.恢复数据所耗 ...

  8. Mongodb全备+增备+oplog恢复误删数据

    此时测试表中有7条数据,做个全备. 全备: mongodump --host=192.168.43.43 --port=37017 --oplog --out=/opt/mongo/fullbacku ...

  9. RMAN异机恢复快速参考

    应用场景:服务器A为正常运行的生产环境,需要在服务器B上部署一套相同环境做测试. 数据库环境:RHEL6.4 + Oracle 11.2.0.4.7 一. 服务器A备份数据库 1.1 在线备份(数据库 ...

随机推荐

  1. XE下 SVG格式的图标使用方法

    下载一个SVG格式的图标,千图网,http://tool.58pic.com/tubiaobao/ 用txt文本打开SVG图标 拖一个PathLabel控件 在PathLabel控件的Data属性添加 ...

  2. HTML 5+CSS 3网页设计经典范例 (李俊民,黄盛奎) 随书光盘​

    <html 5+css 3网页设计经典范例(附cd光盘1张)>共分为18章,涵盖了html 5和css3中各方面的技术知识.主要内容包括html 5概述.html 5与html 4的区别. ...

  3. Live 直播过程

    采集.处理.编码.封包.推流.传输.转码.分发.拉流.解码.播放,从推流到播放

  4. gets()scanf()有害------c++程序设计原理与实践(进阶篇)

    最简单的读取字符串的方式是使用gets(),例如: char a[12]; gets(a); 但gets()和scanf()是有害的,曾经有大约1/4的成功黑客攻击是由于gets()和它的近亲scan ...

  5. "window.location.href"、"location.href"是本页面跳转

    "window.location.href"."location.href"是本页面跳转 "parent.location.href"是上一 ...

  6. audio音频

    html5的audio功能上已经非常强大,回放,跳转,缓冲等以前只能用flash才能实现的功能,html5的audio都能轻松搞定 最近的一个项目使用到了这个功能,把我使用的情况写下来,供大家参考, ...

  7. Codeforces Round #551 (Div. 2)A. Serval and Bus

    A. Serval and Bus time limit per test 1 second memory limit per test 256 megabytes input standard in ...

  8. docker容器管理及网络管理

    防火墙规则—— INPUT 主要用于主机防火墙,设置规则屏蔽处理进入本机的数据包示例:禁止10.180.100.141这个机器访问我本机的web服务iptables -t filter -A INPU ...

  9. Spring框架的核心模块的作用

    Spring框架由7个定义良好的模块(组件)组成,各个模块可以独立存在,也可以联合使用. (1)Spring Core:核心容器提供了Spring的基本功能.核心容器的核心功能是用Ioc容器来管理类的 ...

  10. StyleSheet

    StyleSheet.create()方法 //定义组件 var App = React.createClass({ render:function () { return( <View sty ...