这里以oradatabak.sh(里面的内容要根据实际修改)脚本放在/u01/11g/datapump下为例:

#1.添加脚本执行权限

chmod +x /u01/11g/datapump/oradatabak.sh

#2.在oracle用户下添加定时任务,每天晚上23点,以oracle用户执行oradatabak.sh备份文件

su - oracle

crontab -e

00 23 * * * /u01/11g/datapump/oradatabak.sh

#3.重启crond

service crond restart

#4.oradatabak.sh脚本内容如下:

#!/bin/bash
#:本脚本自动备份1天的数据库,每次备份完成后,删除1天之前的数据。
#加载oracle的相关参数
#如果oracle参数不明确,请使用命令查看
# su - oracle
# echo $ORACLE_HOME
export ORACLE_BASE=/u01/11g
export ORACLE_HOME=/u01/11g/product/11.2.0
export ORACLE_SID=orcl
export PATH=$ORACLE_HOME/bin:$PATH:$HOME/bin
#oracle字符集
export NLS_LANG=AMERICAN_AMERICA.ZHS16GBK
#ORACLE_HOME
ORACLE_HOME=/u01/11g/product/11.2.0
#获取当前时间,格式:20150210
DATE=$(date +%Y%m%d)
#删除1天前的文件
days=1
#执行备份的用户
bakuser=TEST
#执行备份的用户密码
bakuserpass=TEST
#服务器IP
IP=192.168.0.1
#dumpfilename
dumpfilename=$bakuser"_"$DATE
#设置备份目录
export backup_dir=/u01/11g/datapump
#开始备份,此处采用expdp数据方式导出
echo "start oracle backup ..."
#echo $ORACLE_HOME/bin/expdp $bakuser/$bakuserpass schemas=$bakuser dumpfile=$dumpfilename.dmp directory=DPDATA logfile=$dumpfilename.log
$ORACLE_HOME/bin/expdp $bakuser/$bakuserpass@$IP/orcl schemas=$bakuser dumpfile=$dumpfilename.dmp directory=DPDATA logfile=$dumpfilename.log
echo 'Oracle backup successfully.'
#开始压缩
cd $backup_dir
echo "开始压缩..."
tar zcvf $dumpfilename.tar.gz $dumpfilename.dmp
echo "压缩完毕"
#删除.dmp文件
rm -rf $dumpfilename.dmp
#删除1天前的备份文件
echo 'remove files one day ago...'
find $backup_dir -type f -name "*.tar.gz" -mtime +$days -exec rm -f {} \;
find $backup_dir -type f -name "*.log" -mtime +$days -exec rm -f {} \;
echo 'remove successsfully.'

32. linux下oracle数据库定时备份的更多相关文章

  1. windows下oracle数据库定时备份与压缩批处理脚本(win7/win2008亲测通过)

    第一种方式:全备份,并直接覆盖原来的备份文件,固定命名. 脚本: @echo off exp system/a123@HZPG file=e:\db_backup\oradata.dmp log=e: ...

  2. linux下使用crontab定时备份MYSQL数据库的方法:

    摘要 linux下使用crontab定时备份MYSQL数据库的方法: 只需按照下面3步做,一切都在你的掌控之下: 第一步:在服务器上配置备份目录代码: ------------------------ ...

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

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

  4. linux下oracle数据库字符集修改

    linux下oracle数据库字符集修改 0.RHEL6.7.oracle11gr2 1.登录oracle.在安装oracle的用户下进入数据库. $ sqlplus / as sysdba 2.查询 ...

  5. linux下oracle数据库的启动

    linux下oracle数据库的启动 一.切换oracle用户 命令:su - oracle 二.运行sqlplus命令,进入sqlplus环境 命令:sqlplus /nolog (nolog参数表 ...

  6. MySQL定时备份之使用Linux下的crontab定时备份实例

    这篇文章主要介绍了使用Linux下的crontab进行MySQL定时备份的例子,需要的朋友可以参考下   复制代码代码如下: ##################################### ...

  7. Linux下使用crontab定时备份日志

    上周学习了Linux,其中有使用crontab定时备份日志的内容,现把主要步骤记录如下: 首先需要备份的日志的源目录位于/opt/lampp/logs/access_log 备份到/tmp/logs下 ...

  8. windows下mysql数据库定时备份。

    注意:看本教程先必须会windows自带的"任务计划程序". 首先创建一个bat后缀的文件我的是timerExecutePhp.bat文件 timerExecutePhp.bat ...

  9. Linux下Oracle数据库的安装

    记录详细过程以备使用 一.准备安装 为了确保Oracle数据库11g能够成功安装,您需要做好准备工作,例如检查网络配置.更改Linux内核参数.创建用户Oracle.创建安装目录.设置用户Oracle ...

随机推荐

  1. sql将服务器名称换成本地IP

    安装sql后服务器名称默认为电脑的名称,而想要换成习惯用的本地ip也是可以的. 将配置管理中的MSSQLSEVER协议中的TCP/IP启用,并且打开其属性,找到IP地址,添加本地IP,并设置成启用,然 ...

  2. linux 服务发布脚本升级,远程发布,指定拉取远程dev,test等分支代码

    1.本地发布脚本 publish.sh #!/bin/sh currentDay=`date +%Y%m%d` currentTime=`date +%Y%m%d%H%M%S` tomcat1=/da ...

  3. 6.对图像进行ROI选取并操作

    void Test_ROIWith2Image() { Mat g_srcImage=imread("D:\\OpenCV Projects\\OpenCV_Test_Image\\6.jp ...

  4. Java语法基础学习DayFourteen(IO)

    一.java.io.FIle类 1.特点 (1)凡是与输入.输出相关的类.接口等都定义在java.io包下. (2)File是一个类,使用构造器创建对象,此对象对应一个文件(.txt .avi .do ...

  5. PTA——黑洞数

    PTA 7-44 黑洞数 我的程序,一个用例通不过 #include<stdio.h> void sort(int *a,int n); int main() { ; scanf(&quo ...

  6. angular 使用window事件

    1. 使用host   2. 使用HostListener 推荐使用第二种方式. 不推荐下面的方法,虽然也能进行window事件的绑定,但组件销毁后,window事件任然保留,即使手动在组件的ngOn ...

  7. C# 比较两个路径是否指向同一对象

    string path1 = @"c:\test\rootpath"; string path2 = @"C:\TEST\..\TEST\ROOTPATH"; ...

  8. Linux进程调度与抢占

    一.linux内核抢占介绍 1.抢占发生的必要条件 a.preempt_count抢占计数必须为0,不为0说明其它地方调用了禁止抢占的函数,比如spin_lock系列函数.b.中断必须是使能的状态,因 ...

  9. Codeblocks中文乱码解决方法

    odeblocks中文乱码解决方法: 特别提示:出现中文乱码情况才执行以下操作,未出现请勿随意修改!!!! 打开Codeblocks -> 设置 -> 编辑器: 然后点击 Encoding ...

  10. 在线HTML编辑器KindEditor

     简介 KindEditor是一套开源的HTML可视化编辑器,主要用于让用户在网站上获得所见即所得编辑效果,兼容IE.Firefox.Chrome.Safari.Opera等主流浏览器.KindEdi ...