一.rman备份脚本并为定时任务

#!/bin/bash
source ~/.bash_profile
export LANG=en_US
BACKUP_DATE=`date +%d`
#RMAN_LOG_FILE=${0}.out
RMAN_LOG_FILE=backupinfo.out
TODAY=`date`
USER=`id|cut -d "(" -f2|cut -d")" -f1`
echo "---------------$TODAY--------------"
#export ORACLE_HOME=/u01/app/oracle/product/11.2.0/dbhome_1
export RMAN=$ORACLE_HOME/bin/rman
export ORACLE_SID=DB11G
export ORACLE_USER=oracle

echo 1
echo "ORACLE_SID: $ORACLE_SID">>$RMAN_LOG_FILE
echo "ORACLE_HOME:$ORACLE_HOME">>$RMAN_LOG_FILE
echo "ORACLE_USER:$ORACLE_USER">>$RMAN_LOG_FILE
echo "==========================================">>$RMAN_LOG_FILE
echo "BACKUP DATABASE BEGIN......">>$RMAN_LOG_FILE
echo " ">>$RMAN_LOG_FILE
chmod 666 $RMAN_LOG_FILE
echo 2
WEEK_DAILY=`date +%a`
case "$WEEK_DAILY" in
"Mon")

BAK_LEVEL=2
;;
"Tue")
BAK_LEVEL=2
;;
"Wed")
BAK_LEVEL=2
;;
"Thu")
BAK_LEVEL=1
;;
"Fri")
BAK_LEVEL=2
;;
"Sat")
BAK_LEVEL=2
;;
"Sun")
BAK_LEVEL=0
;;
"*")
BAK_LEVEL=error
esac
export BAK_LEVEL=$BAK_LEVEL
echo "Today is : $WEEK_DAILY incremental level= $BAK_LEVEL">>$RMAN_LOG_FILE
run1="
BAK_LEVEL=$BAK_LEVEL;
export BAK_LEVEL
ORACLE_HOME=$ORACLE_HOME;
export ORACLE_HOME
ORACLE_SID=$ORACLE_SID;
export ORACLE_SID
$RMAN target sys/******@DB11G msglog $RMAN_LOG_FILE append <<EOF
run
{
allocate channel c1 type disk;
allocate channel c2 type disk;
backup incremental level= $BAK_LEVEL skip inaccessible filesperset 5 Database format='/oracletemp/DB11G/rmanbackup/ora11g_lev"$BAK_LEVEL"_%U_%T' tag='ora11g_lev"$BAK_LEVEL"';
sql 'alter system archive log current';
backup archivelog all tag='arc_bak' format='/oracletemp/DB11G/rmanbackup/archivelog_%U_%T' skip inaccessible filesperset 5 not backed up 1 times delete input;
backup current controlfile tag='bak_ctlfile' format='/oracletemp/DB11G/rmanbackup/ctl_file_%U_%T';
backup spfile tag='spfile' format='/oracletemp/DB11G/rmanbackup/ora11g_spfile_%U_%T';
release channel c2;
release channel c1;
}
report obsolete;
delete noprompt obsolete;
crosscheck backup;
delete noprompt expired backup;
list backup summary;
EOF
"
#+--------------------------------------------------------------+
#| Initiate the command string
#+--------------------------------------------------------------+
if [ "$CUSER" = "root" ]
then
echo "Root Command String: $run1" >> $RMAN_LOG_FILE
su - $ORACLE_USER -c "$run1" >> $RMAN_LOG_FILE
RSTAT=$?
else
echo "User Command String: $run1" >> $RMAN_LOG_FILE
/bin/sh -c "$run1" >> $RMAN_LOG_FILE
RSTAT=$?
fi
#+--------------------------------------------------------------+
#| Log the completion of this script.
#+--------------------------------------------------------------+
if [ "$RSTAT" = "0" ]
then
LOGMSG="ended successfully"
else
LOGMSG="ended in error"
fi
echo >> $RMAN_LOG_FILE
echo Script $0 >> $RMAN_LOG_FILE
echo -------- $LOGMSG on `date` -------- >> $RMAN_LOG_FILE
echo >> $RMAN_LOG_FILE
exit $RSTAT
<<EOF
#+--------------------------------------------------------------+
#| The end.
#+--------------------------------------------------------------+

二.异机恢复

在备份机器上面安装数据库软件,新建相应的目录及配置权限。(尴尬)做的恢复笔记找不到了。

有时间再来一次。

---------------我是有底线的-------------------- 
作者:jt
出处:http://www.cnblogs.com/Jt00/
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。
如果文中有什么错误,欢迎指出。以免更多的人被误导。

rman备份与异机恢复的更多相关文章

  1. rman 备份并异机恢复

    1.RMAN 备份脚本 RUN { CONFIGURE RETENTION POLICY DAYS; CONFIGURE CONTROLFILE AUTOBACKUP ON; CONFIGURE CO ...

  2. Hyper-V安装Oracle Linux6_4 Oracle db 12c并使用rman做异机恢复

    本文记录在Windows Server 2012 R2上安装Oracle Enterprise Linux 6.4以及使用RMAN进行进行异机恢复的过程. Windows服务器增加Hyper-V功能 ...

  3. rman异机恢复,全部恢复和增量恢复

    1.首先准备工作:hostname 192.168.222.11 ol7.localdomain ol7建立相关目录:mkdir -p /u01/app/oracle/oradata/DB11G/mk ...

  4. RMAN - 备份异机恢复

    OS: Oracle Linux Server release 5.7 DB: Oracle Database 11g Enterprise Edition Release 11.2.0.3.0 - ...

  5. RMAN 备份异机恢复 并创建新DBID

    测试平台信息: Oracle:11gR2 操作系统:Redhat 5.5 Target DB:dave   几点说明: (1)RMAN 异机恢复的时候,db_name必须相同. 如果说要想改成其他的实 ...

  6. RMAN备份策略与异机恢复一例(续篇)

    本文是<RMAN备份策略与异机恢复一例>的续篇,继续实验验证,最终实现两个需求: 1.异机恢复临时测试的小库 2.传输归档时,实现增量传输 1.异机恢复临时测试的小库 之前异机恢复的需求已 ...

  7. RMAN备份策略与异机恢复一例

    实验环境: A机器(生产用途):RHEL 6.5 + Oracle 11.2.0.4 + IP Address 192.168.1.11 B机器(备机用途):RHEL 6.5 + Oracle 11. ...

  8. RMAN异机恢复遭遇ORA-01547、ORA-01152、ORA-01110错误案例

    测试环境:     操作系统  :  Red Hat Enterprise Linux ES release 4 (Nahant Update 4)   VMWARE     数据库     :  O ...

  9. Oracle 单实例 迁移到 RAC 实例 -- 使用RMAN 异机恢复

    Oracle 官网有关单实例迁移到RAC的一个步骤说明: How to Convert 10g Single-Instance database to 10g RAC using Manual Con ...

随机推荐

  1. ADB工具的安装

    1.Windows ADB工具下载地址: https://developer.android.google.cn/studio/releases/platform-tools ADB工具官网教程: h ...

  2. 004---Linux系统设置

    Linux版本相关命令 查看系统版本:cat /etc/redhat-release 查看系统内核版本以及位数:uname -r [root@hostname1 ~]# cat /etc/redhat ...

  3. maven中settings文件的配置

    鉴于上一个博客写的maven打包,读者老爷们可能找不到settings文件的配置,这里专门附上settings文件的配置: 有的settings文件只含有一些空标签,需要手动去配置. <?xml ...

  4. 【EXCEL】SUMIFS(複数の条件を指定して数値を合計する)

    分享:    

  5. Lucene如何实现多条件搜索?

    有两种方式可以实现, 一是:Lucene搜索API中提供了一个布尔查询器(BooleanQuery),它可以包含多个查询器,每个查询器Occur枚举控制是“and” 还是“or” BooleanQue ...

  6. (转) Sqoop使用实例讲解

    原博客地址:http://blog.csdn.net/evankaka 摘要:本文主要讲了笔者在使用sqoop过程中的一些实例 一.概述与基本原理 Apache Sqoop(SQL-to-Hadoop ...

  7. 【面试题】2018年最全Java面试通关秘籍第五套!

    [面试题]2018年最全Java面试通关秘籍第五套! 原创 2018-04-26 徐刘根 Java后端技术 第一套:<2018年最全Java面试通关秘籍第一套!> 第二套:<2018 ...

  8. EntityFramewrok 使用

    1.使用一些查询比较复杂或者需要拼接的查询的时候最好一直保持IQueryable.一直到最后取数据的时候才进行查询.例如分页之类的条件拼接. var query = dbset.Where(expre ...

  9. (Python爬虫01)-本想给随笔加个序号才发现这么不方便

    本想给随机加个序号,才发现还得去返回看看文章的序号.好在cnblog能断点自动保存. 作为一个小程序员,点赞的同时还在想,谁知道咋实现这种实时保存呢?有知道的给个参考文档呗.太感激了! 重点在这里 有 ...

  10. 【app.js】配置及App函数说明

    app.js中的App函数用来注册一个小程序或设置全局变量. App函数: 语法:App(Object)     参数: Object json对象     说明: App函数必须在app.js中调用 ...