• 使用RMAN和控制文件备份删除归档日志的SHELL脚本--RED HAT 5 LINUX 64


    在ORACLE用户下的定时器设置

    [oracle@SHARKDB dbscripts]$ crontab -l
    # minute hour day month week
    15 1  * * 0  sh /home/oracle/dbscripts/backup_full.sh
    05 3  * * *  sh /home/oracle/dbscripts/del_arc.sh

     全备脚本 先配置保留时间窗口,配置备份目录和格式,然后交叉检查所有备份集.

    删除无效备份集,删除过期对象,进行全备份并压缩..

    [oracle@SHARKDB dbscripts]$ cat backup_full.sh

    #!/bin/ksh
    source ~/.bash_profile
    echo "------------------Start------------------";date
    #backup start
    $ORACLE_HOME/bin/rman log=/home/oracle/dbscripts/logs/rman_full_backup.log << EOF
    connect target /
    run{
    CONFIGURE RETENTION POLICY TO RECOVERY WINDOW OF 2 DAYS;
    CONFIGURE CHANNEL DEVICE TYPE DISK FORMAT   '/arch/full_%d_%s_%T_%t.bak';
    crosscheck backupset;
    delete noprompt expired backupset;
    delete noprompt obsoleted;
    backup full  AS COMPRESSED BACKUPSET DATABASE include current controlfile  plus archivelog;
    }
    exit;
    EOF
    echo "-------------------End-------------------";date

    删除归档日志先检查归档日志把物理删除的信息从控制文件删除,然后执行物理删除 2天前的.

    [oracle@SHARKDB dbscripts]$ cat del_arc.sh

    #! /bin/bash
    source ~/.bash_profile
    exec >> /home/oracle/dbscripts/logs/del_arch`date +%F_%H`.log
    $ORACLE_HOME/bin/rman target / <<EOF
    crosscheck archivelog all;
    delete noprompt expired archivelog all;
    delete noprompt archivelog until time 'sysdate-2';
    exit;
    EOF


    如果没有SO 彼此 语句 -- source ~/.bash_profile 那么要在ROOT下执行定时器 切换用户 执行脚本

    03 04 * * * su - oracle -c '/home/oracle/del_arc.sh'

  • 相关阅读:
    关于管理的经典故事(员工激励)
    通过SQL语句获取MSSQL数据库的数据字典
    AMF(java)学习笔记(一)
    ActionScript 3.0著名开源库 大集合
    Flash全屏功能详解
    NIO网络编程框架MINA2.0学习笔记(一)
    一份相当巨大的AS类库
    java NIO非阻塞式IO网络编程学习笔记(一)
    数据传输序列化与反序列化协议大全
    RED5学习笔记(一):RED5简介
  • 原文地址:https://www.cnblogs.com/keanuyaoo/p/3397995.html
Copyright © 2020-2023  润新知