全备脚本

cat rman_full.sh

#!/bin/bash
export ORACLE_BASE=/opt/oracle
export ORACLE_HOME=$ORACLE_BASE/product/11.2./db_1
export ORACLE_SID=orcl
export NLS_LANG=AMERICAN_AMERICA.AL32UTF8
export PATH=$ORACLE_HOME/bin:$PATH
rman target / log /opt/oracle/backup/rman_full.log append<<EOF
run
{allocate channel c1 type disk;
allocate channel c2 type disk;
backup database filesperset format '/opt/oracle/backup/full_%d_%T_%s_%p';
sql 'alter system archive log current';
backup archivelog all format '/opt/oracle/backup/arch_%d_%T_%s_%p' delete input;
backup current controlfile format '/opt/oracle/backup/ctl_%d_%T_%s_%p';
crosscheck backup;
crosscheck archivelog all;
delete noprompt obsolete;
delete noprompt expired backup;
delete noprompt expired archivelog all;
}
EOF

增备脚本

[root@centos74 /opt/sh ::&&]#cat rman_arch.sh
export ORACLE_BASE=/opt/oracle
export ORACLE_HOME=$ORACLE_BASE/product/11.2./db_1
export ORACLE_SID=orcl
export NLS_LANG=AMERICAN_AMERICA.AL32UTF8
export PATH=$ORACLE_HOME/bin:$PATH
rman target / log /opt/oracle/backup/rman_arch.log append<<EOF
run
{allocate channel c1 type disk;
allocate channel c2 type disk;
sql 'alter system archive log current';
backup archivelog all format '/opt/oracle/backup/arch_%d_%T_%s_%p' delete input;
backup current controlfile format '/opt/oracle/backup/ctl_%d_%T_%s_%p';
crosscheck backup;
crosscheck archivelog all;
delete noprompt expired backup;
delete noprompt expired archivelog all;
}
EOF

恢复脚本

export ORACLE_BASE=/opt/oracle
export ORACLE_HOME=$ORACLE_BASE/product/11.2./db_1
export ORACLE_SID=orcl
export NLS_LANG=AMERICAN_AMERICA.AL32UTF8
export PATH=$ORACLE_HOME/bin:$PATH
rman target / log /opt/oracle/backup/rman_arch.log append<<EOF
shutdown immediate;
startup mount;
run{
allocate channel c1 type disk;
allocate channel c2 type disk;
sql 'alter session set nls_date_format="yyyy-mm-dd hh24:mi:ss"';
set until time = '2011-10-19 22:21:38';
restore database;
recover database;
alter database open resetlogs;
}
EOF

rman备份/恢复步聚

rman备份步聚

准备工作
.control_file_record_keep_time初始化参数
rman元数据在控制文件中保留的最小有效天数,默认为7天(即备份数据不能超过7天不然,数据会丢失)
$ sqlplus / as sysdba
SQL> alter system set control_file_record_keep_time=;
SQL> show parameter control; .启动归档模式
$ mkdir -p /opt/oracle/archdata #创建归档日志存放目录
$ sqlplus / as sysdba
SQL> archive log list; #查看归档日志状态
Database log mode No Archive Mode
Automatic archival Disabled #关闭
Archive destination /opt/oracle/archdata
Oldest online log sequence
Current log sequence SQL> alter system set log_archive_dest_1='location=/opt/oracle/archdata' scope=both; #更改归档日志存放目录
SQL> select dest_name,destination,status,error from v$archive_dest where dest_name='LOG_ARCHIVE_DEST_1'; #查看归档日志存放目录 重启数据库mount状态,开启归档(凡是alter database操作都是修改“控制文件”内容)
SQL> shutdown immediate; #关闭数据库
SQL> startup mount; #启动数据库到mount模式
SQL> alter database archivelog; #开启归档模式
SQL> alter database open; #启动数据库 SQL> alter system switch logfile; # 刚刚开启归档还没有生成日志,我们手工切换一下
SQL> select sequence#,name,archived,applied from v$archived_log; # 数据库层查看归档日志文件 rman备份注意事项
1备份顺序
备份数据--》备份归档数据--》份控制文件 .备份要有日志信息
rman target / log /tmp/rman_full.log #登陆rman,把输出日志重定向到/tmp/rman_full.log RMAN环境变量设置
rman target /
show all; #查看所有配置
#默认配置保留策略是一个备份
CONFIGURE RETENTION POLICY TO REDUNDANCY ; # default
#配置恢复期窗口是90天,意思就是能够恢复到这90天中的任意一天,那么要求就是最少保留一个90天之前的备份
并且有自那之后产生的所有归档日志
CONFIGURE RETENTION POLICY TO recovery window of   days;
CONFIGURE RETENTION POLICY clear;
#备份的设备类型默认是disk,磁盘类型,
CONFIGURE DEFAULT DEVICE TYPE TO DISK; # default
#这个是备份为磁带类型
CONFIGURE DEFAULT DEVICE TYPE TO stb;
#自动备份控制文件
CONFIGURE CONTROLFILE AUTOBACKUP ON; 备份
请查看全量备份脚本

rman恢复控制文件

sqlplus / as sysdba;
SQL> shutdown immediate;
SQL> startup mount;
rman target /
RMAN> list backupset;
RMAN> restore controlfile from 'xxxxx'; #xxxx是控制文件路径

rman恢复数据到指定时间点

原文地址: https://blog.csdn.net/u011364306/article/details/50013607

.修改数据库时间格式
SQL> alter session set nls_date_format='yyyy-mm-dd hh24:mi:ss';
.查看数据库时间
SQL> select sysdate from dual;
3.关闭数据库并启动到mount模式
SQL> shutdown immediate;
SQL>startup mount;

4.恢复数据库
请看恢复脚本

rman备份/恢复的更多相关文章

  1. rman备份恢复命令之switch

    rman备份恢复命令之switch 一 switch 命令 1 switch命令用途 更新数据文件名为rman下镜像拷贝时指定的数据文件名 更新数据文件名为 set newname 命令指定的名字. ...

  2. Oracle RMAN备份恢复指导书

    目 录 1 目的与范围... 1 2 术语和定义... 1 3 角色和职责... 2 4 使用RMAN备份数据库... 2 4.1.1 检查数据库模式... 2 4.1.2 连接到target数据库. ...

  3. Oracle之RMAN备份恢复1-基础篇

    1,rman的作用与体系架构 1.1 什么是rman rman(recovery manager)是oracle8i以后dba的一重要工具一般位于$oracle_home/bin目录下,主要用来备份, ...

  4. 非系统数据文件损坏,rman备份恢复

    实验前提:已经做好备份. SQL> col file_name for a50select file_id,file_name from dba_data_files; FILE_ID FILE ...

  5. Oracle Rman备份恢复和管理

    参考资料: Oracle之Rman入门指南 一步一步学Rman Rman简介 Rman-Recover manager恢复管理工具. Oracle集成了很多环境的一个数据库备份和恢复的工具. Rman ...

  6. oracle直通车6关于rman备份恢复数据文件,以及创建分区表的实验

    1.创建一张表,在表上创建一个索引,分别查询表,索引各自分配了多少个extents,多少个数据块以及总共占用空间的大小(bytes). 答:创建一张表t,为字段object_id创建索引t_objec ...

  7. ORACLE 11G没有备份文件參数文件在异机通过rman备份恢复找回被误删的数据

    背景:          同事误删除线上数据.所以须要从备份中找回数据恢复. 真实屋漏偏逢连夜雨.船迟又遇打头风.前两天备份的磁盘坏块,如今仅仅有rman全备的.bak文件,没有控制文件和參数文件,所 ...

  8. ORACLE11g 没有控制文件如何通过rman备份恢复数据的详细实战过程

    1.副总裁需要裸恢复的严峻现实 集团总部的信息部负责人给我打电话说为了找一年前的记录,所以需要对一年前2015年5月1日的数据进行恢复.而2016年初因为进行迁移,所以有些文件可能丢失,手上只有rma ...

  9. RMAN 备份恢复 删除表空间后控制文件丢失

    先备份一个控制文件 RMAN> backup current controlfile tag='bak_ctlfile' format='/home/oracle/backup/bak_ctl_ ...

随机推荐

  1. eclipse maven 项目突然所有的JS方法都失效了

    原因:JS 或者 jQuery 有严重的语法错误

  2. CentOS7编译安装sshpass过程

    环境说明:centos 7 cat /etc/redhat-release CentOS Linux release 7.6.1810 (Core) 我的sshpass版本 sshpass-1.06. ...

  3. nodejs 对接微信 express 对接微信

    安装引用 npm install express npm install body-parser npm install express-xml-bodyparser npm install axio ...

  4. MySQL-快速入门(10)触发器

    1.什么是触发器 触发器是与表有关的命名数据库对象.触发器由事件来触发某个操作. 触发器是特殊的存储过程,触发器不需要call语句来调用,也不需要手工启动,只需要确定一个预定义的事件发生的时候,就会被 ...

  5. tab栏切换效果运用案例

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...

  6. 七、latex中的插图

  7. 对数据集做标准化处理的几种方法——基于R语言

    数据集——iris(R语言自带鸢尾花包) 一.scale函数 scale函数默认的是对制定数据做均值为0,标准差为1的标准化.它的两个参数center和scale: 1)center和scale默认为 ...

  8. 64bit机器编译32bit汇编

    sudo apt-get install gcc-multilib sudo apt-get install g++-multilib gcc -m32  -S a.c -o a.s gcc -m64 ...

  9. DDD领域驱动设计初探(五):AutoMapper使用

    前言:前篇搭建了下WCF的代码,就提到了DTO的概念,对于为什么要有这么一个DTO的对象,上章可能对于这点不太详尽,在此不厌其烦再来提提它的作用: 从安全上面考虑,领域Model都带有领域业务,让Cl ...

  10. Linux服务器调优

    Linux内核参数 http://space.itpub.net/17283404/viewspace-694350 net.ipv4.tcp_syncookies = 表示开启SYN Cookies ...