Welcome 微信登录

首页 / 数据库 / MySQL / Linux下的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 http://www.linuxidc.com/Linux/2011-08/41194.htm
 
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/
  • 1
  • 2
  • 下一页
Oracle 11g导出空表方法Oracle 数据分析和动态采样相关资讯      Oracle备份 
  • 利用Oracle自带的impdp和expdp进行  (05月18日)
  • Oracle 10.2.0.5 版本之后 asm   (08/08/2014 11:02:09)
  • Linux系统中Oracle自动备份方案  (07/25/2014 13:11:25)
  • Java实现Oracle数据库备份  (08/12/2014 11:24:51)
  • Oracle备份与恢复系列  (08/01/2014 09:15:02)
  • Oracle exp imp备份、恢复表空间数  (06/15/2014 11:38:40)
本文评论 查看全部评论 (0)
表情: 姓名: 字数