mysql 覆盖linux_Linux下的Oracle按周7个文件覆盖备份

需要设计一个对ORACLE的备份方案,由于数据库较大,不适合每天存量备份,所以设计了这种按周7个文件的覆盖备份

今天因为工作上的关系,需要设计一个对Oracle的备份方案,由于数据库较大,不适合每天存量备份,所以设计了这种按周7个文件的覆盖备份,,具体步骤如下:

1.创建SHELL执行脚本oracle_backup.sh

[root@czjie ~]# vi /data/oracle/orabak/oracle_backup.sh

语句如下:

#!/bin/bash

export ORACLE_BASE=/opt/app/oracle

export ORACLE_HOME=$ORACLE_BASE/product/10.2.0/db_1

export ORACLE_SID=orcl

export PATH=$ORACLE_HOME/bin:$PATH

export NLS_LANG=AMERICAN_AMERICA.ZHS16GBK

#生成备份文件名,最后一位数字(0-6)对应(星期天-星期六)

a=czjie_bak_week$(date +%w)

echo $a

exp czjie/czjie_2012 file=/data/oracle/orabak/$a.dmp log=/data/oracle/orabak/$a.log

注意:export NLS_LANG=AMERICAN_AMERICA.ZHS16GBK,这一行如果没有,那么当exp工具所在的环境变量跟NLS LANG中的NLS_CHARCATERSET不一致时,就会导致EXP-00091 Exporting questionable statistics,如果不知道怎么获取NLS_CHARCATERSET,可参考我的文章:EXP-00091 Exporting questionable statistics

a=czjie_bak_week$(date +%w) 中 $(date +%w) 获取的是周几,按星期天为0的顺序一直到星期六的6,测试时候可以用$(date +%w -d "1 days ago")方法进行天数上的调整;

2.授予SHELL脚本可执行权限及其用户归属

[root@czjie ~]# cd /data/oracle/orabak

[root@czjie orabak]# chmod 700 backup.sh

[root@czjie orabak]# chown oracle backup.sh

3.确保备份的文件目录归属于oracle用户

[root@czjie ~]# chown –R oracle.oinstall /data/oracle/orabak/

logo.gif

本文原创发布php中文网,转载请注明出处,感谢您的尊重!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值