• Oracle RMAN备份脚本及计划


    #crontab定时任务(周一全量,周二至周日增量)

    30 0 * * 1 nohup sh /data/rman/script/rmanfull.sh > /data/rman/script/rman.log &
    30 0 * * 0,2,3,4,5,6 nohup sh /data/rman/script/rmanlevel1.sh > /data/rman/script/rman.log &

    #level 0全量备份脚本rmanfull.sh

    #!/bin/ksh
    . /home/oracle/.bash_profile
    rman target / nocatalog log='/data/rman/script/rmanfull.log' append <<EOF
    run
    {
    allocate channel char1 type disk format '/data/rman';
    allocate channel char2 type disk format '/data/rman';
    sql 'alter system archive log current';
    crosscheck archivelog all;
    crosscheck backup;
    delete noprompt expired backup;
    delete noprompt expired archivelog all;
    backup incremental level 0 database tag='dbfilebak' format '/data/rman/dbfile_%d_%t_%s_%p' filesperset 5;
    backup archivelog all not backed up 1 times tag='archlogbak' format '/data/rman/archlog_%d_%t_%s_%p' filesperset 5;
    backup current controlfile tag='controlbak' format '/data/rman/control_%d_%t_%s_%p';
    backup spfile tag='spfilebak' format '/data/rman/spfile_%d_%t_%s_%p';
    crosscheck archivelog all;
    crosscheck backup;
    delete noprompt expired backup;
    delete noprompt expired archivelog all;
    delete noprompt archivelog all completed before 'sysdate -30';
    delete noprompt backupset completed before 'sysdate -17';
    release channel char1;
    release channel char2;
    }
    exit
    EOF

    #level 1增量备份脚本rmanlevel1.sh

    #!/bin/ksh
    . /home/oracle/.bash_profile
    rman target / nocatalog log='/data/rman/script/rmanlevel1.log' append <<EOF
    run
    {
    allocate channel char1 type disk format '/data/rman';
    allocate channel char2 type disk format '/data/rman';
    sql 'alter system archive log current';
    crosscheck archivelog all;
    crosscheck backup;
    delete noprompt expired backup;
    delete noprompt expired archivelog all;
    backup incremental level 1 database tag='dbfilebak' format '/data/rman/dbfile_%d_%t_%s_%p' filesperset 5;
    backup archivelog all not backed up 1 times tag='archlogbak' format '/data/rman/archlog_%d_%t_%s_%p' filesperset 5;
    backup current controlfile tag='controlbak' format '/data/rman/control_%d_%t_%s_%p';
    backup spfile tag='spfilebak' format '/data/rman/spfile_%d_%t_%s_%p';
    crosscheck archivelog all;
    crosscheck backup;
    delete noprompt expired backup;
    delete noprompt expired archivelog all;
    delete noprompt archivelog all completed before 'sysdate -30';
    delete noprompt backupset completed before 'sysdate -17';
    release channel char1;
    release channel char2;
    }
    exit
    EOF

  • 相关阅读:
    【转】PHP实现系统编程(四)--- 本地套接字(Unix Domain Socket)
    php monolog 的写日志到unix domain socket 测试终于成功
    dhcp 过程
    【转】nginx 和 php-fpm 通信使用unix socket还是TCP,及其配置
    php 获取TZ时间格式
    React.Fragment 包裹标签
    git 关联远程分支
    select * from (select user())a 为什么是查询user()的意思?
    ant Form 常用 api
    antd-design LocaleProvider国际化
  • 原文地址:https://www.cnblogs.com/sonnyBag/p/12090766.html
Copyright © 2020-2023  润新知