概述

  Linux下Oracle自动备份就没有MSSQL那么简单,在Linux下Oracle的备份需要借助crontab 指令,crontab 能够自动执行系统定时任务,通过配置crontab 指向Oracle定时备份指令完成数据的定时备份。

编写脚本

1、编写数据库备份脚本文件(oracle_back.sh)

#引进执行数据备份的环境
echo -e '******Start********'$(date '+%Y%m%d%H%M%S')>>/data/blog.txt #日志打印
export ORACLE_BASE=/data/oracle #oracle安装目录
export ORACLE_HOME=/data/oracle/product/11.2.0/db_1 #数据库实体名称,有些系统这个位置不同名
export ORACLE_SID=MLUCDB
export PATH=$ORACLE_HOME/bin:$PATH
rq='db'$(date '+%Y%m%d')'214001' #动态编写时间
orq='db'$(date -d'2 day ago' +'%Y%m%d')'214001' #当前时间减去2天
echo -e $rq $orq>>/data/blog.txt
expdp hao123/abc123@DB105 dumpfile=$rq.dmp log=$rq.log directory=dpdata #导出数据库文件
zip -m /data/backup/$rq.zip /data/backup/$rq.dmp /data/backup/$rq.log #压缩文件zip
find /data/backup -name $orq.zip |xargs rm -rf #压删除最近2天之外的数据
echo -e '******End**********'$(date '+%Y%m%d%H%M%S')>>/data/blog.txt

备注:directory=dpdata是oracle的文件路径,我这里设置dpdata指向/data/backup ,同时记得将Oracle用户拥有/data/backup的文件夹所有权;

2、编辑脚本文件为可执行文件

chmod +x /data/oracle_back.sh

3、编写定时任务crontab脚本

[root@localhost data]# crontab -e
* * * /data/oracle_back.sh #每天的16点42分自动执行脚本文件,执行完成之后,系统自动发送一封执行邮寄到root文件里面(/var/spool/mail/root)
#清空root文件内容的脚本,如果需要清理文件内容 echo>root

4、跟踪执行结果

tail -f /var/log/cron  #跟踪查询定时任务是否执行
cat /var/spool/cron/root #查询root下有那些定时任务

5、待续问题

crontab执行完成可以发送Email,该功能的具体配置,还没研究....

oracle_back.sh

CentOS7下Oracle的自动备份的更多相关文章

  1. Windows下Oracle数据库自动备份批处理脚本

    expdb命令版本 @echo off REM ########################################################### REM # Windows Se ...

  2. Windows系统下Oracle每天自动备份

    linux和unix下面使用shell可以很方便实现,如果windows环境下可以结合计划任务实现 创建备份目录d:\backup, 创建批处理命令Bak.bat,编写备份脚本 exp user/pa ...

  3. centos7下mysqldump+crontab自动备份数据库

    1.创建文件夹(存放备份数据) mkdir /bak mkdir /bak/mysqldata 2.编写脚本 vi /usr/sbin/bakmysql.sh 脚本内容如下 DATE=`date +% ...

  4. Linux下通过脚本自动备份Oracle数据库并删除指定天数前的备份

    说明: Oracle数据库服务器操作系统:CentOSIP:192.168.0.198端口:1521SID:orclOracle数据库版本:Oracle11gR2 具体操作: 1.root用户登录服务 ...

  5. 在linnux下,配置自动备份oacle

    以oracle身份登录到linux,在oracle home目录下创建目录 shell $ mkdir shell 创建自动备份脚本 $ cd shell $ touch expdp.sh $ chm ...

  6. oracle expdp自动备份脚本

    windows: @echo off echo ================================================ echo Windows环境下Oracle数据库的自动 ...

  7. 32. linux下oracle数据库定时备份

    这里以oradatabak.sh(里面的内容要根据实际修改)脚本放在/u01/11g/datapump下为例: #1.添加脚本执行权限 chmod +x /u01/11g/datapump/orada ...

  8. Oracle 数据库自动备份方案

    1.新建 backup.bat脚本 @echo off echo ================================================ echo Windows环境下Ora ...

  9. ORACLE数据库 自动备份 定时计划任务 windows

    疑问为什么没有输入oracle 的数据库安装目录就能直接备份呢,可能是因为oracle默认安装c盘,在docs命令直接能操作吧,不信可以使用sqlplus试试. 一共分三步: 一.建立一个.bat 批 ...

随机推荐

  1. cocopod 中添加第三方框架,包含静态库文件,使用svn添加上传

    step one: 进入静态库文件的目录 cd 路径: step two:使用命令添加 svn add 静态库名字; 然后更新一下代码就OK

  2. hdu3415 单调队列

    Max Sum of Max-K-sub-sequence Time Limit:1000MS     Memory Limit:32768KB     64bit IO Format:%I64d & ...

  3. CSS之A标签

    a标签,超级链接 a是英语anchor锚的意思. a标签常用的就是三个属性: 1        <a href="网址" title="悬停文本" tar ...

  4. C# 面试知识点总结

    1,事件是对象,委托时类型.事件内部其实就是一个private 的委托和add,remove两个方法. 2.override 和overload的区别: override是对基类中方法的重写,是会覆盖 ...

  5. apt-get upgarde和dist-upgrade的差别

    apt-get upgarde和dist-upgrade的差别 apt-get upgarde和dist-upgrade的差别   Debian/Ubuntu Linux都使用apt,升级时都是:  ...

  6. FireFox每次访问页面时检查最新版本

    FireFox每次访问页面时检查最新版本 浏览器都有自己的缓存机制,作为开发人员,每次js的修改都要清空缓存,显然很不方便.而firefox并没有提供ie那样的设置. 下面的方法就可以非常方便的设置f ...

  7. [Head First设计模式]餐馆中的设计模式——命令模式

    系列文章 [Head First设计模式]山西面馆中的设计模式——装饰者模式 [Head First设计模式]山西面馆中的设计模式——观察者模式 [Head First设计模式]山西面馆中的设计模式— ...

  8. js高级群的一些整理6月

    https://github.com/the5fire/backbonejs-learning-note/blob/master/chapters/01-hello-backbonejs.rst Ba ...

  9. 去掉你代码里的 document.write("<script...

    在传统的浏览器中,同步的 script 标签是会阻塞 HTML 解析器的,无论是内联的还是外链的,比如: <script src="a.js"></script& ...

  10. service和serviceImpl的选择

    同行中,有些同行公司的代码风格是service层=service接口+serviceImpl实现类: 而有的同行公司的代码风格是service层=service类: 为什么不一样呢? 以前没想过这个问 ...