32. linux下oracle数据库定时备份
这里以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数据库定时备份的更多相关文章
- windows下oracle数据库定时备份与压缩批处理脚本(win7/win2008亲测通过)
第一种方式:全备份,并直接覆盖原来的备份文件,固定命名. 脚本: @echo off exp system/a123@HZPG file=e:\db_backup\oradata.dmp log=e: ...
- linux下使用crontab定时备份MYSQL数据库的方法:
摘要 linux下使用crontab定时备份MYSQL数据库的方法: 只需按照下面3步做,一切都在你的掌控之下: 第一步:在服务器上配置备份目录代码: ------------------------ ...
- Windows下Oracle数据库自动备份批处理脚本
expdb命令版本 @echo off REM ########################################################### REM # Windows Se ...
- linux下oracle数据库字符集修改
linux下oracle数据库字符集修改 0.RHEL6.7.oracle11gr2 1.登录oracle.在安装oracle的用户下进入数据库. $ sqlplus / as sysdba 2.查询 ...
- linux下oracle数据库的启动
linux下oracle数据库的启动 一.切换oracle用户 命令:su - oracle 二.运行sqlplus命令,进入sqlplus环境 命令:sqlplus /nolog (nolog参数表 ...
- MySQL定时备份之使用Linux下的crontab定时备份实例
这篇文章主要介绍了使用Linux下的crontab进行MySQL定时备份的例子,需要的朋友可以参考下 复制代码代码如下: ##################################### ...
- Linux下使用crontab定时备份日志
上周学习了Linux,其中有使用crontab定时备份日志的内容,现把主要步骤记录如下: 首先需要备份的日志的源目录位于/opt/lampp/logs/access_log 备份到/tmp/logs下 ...
- windows下mysql数据库定时备份。
注意:看本教程先必须会windows自带的"任务计划程序". 首先创建一个bat后缀的文件我的是timerExecutePhp.bat文件 timerExecutePhp.bat ...
- Linux下Oracle数据库的安装
记录详细过程以备使用 一.准备安装 为了确保Oracle数据库11g能够成功安装,您需要做好准备工作,例如检查网络配置.更改Linux内核参数.创建用户Oracle.创建安装目录.设置用户Oracle ...
随机推荐
- Verilog HDL按位操作符与归约操作符的区别
sdaPipe <= {`DEB_I2C_LEN{1'b1}}; {{}} 为一种赋值运算符,将一个表达式放入双重花括号中,而复制因子放在第一层花括号中,用来指定复制的次数. { }表示拼接,{ ...
- Tex_安装_在Ubuntu系统下
$\LaTeX$是一个强大的排版软件,在数学公式.表格.甚至是科学绘图方面有着独特优势.本文在Ubuntu系统下,整理Tex安装相关的操作,以为备忘.所引链接都未同作者商量,如有不妥望及时告知. 命令 ...
- 将GETDATE()转换为指定日期格式的varchar类型
CREATE FUNCTION [dbo].[FormatDate] (@date as datetime, ) ) ) AS BEGIN ) set @datestring=@formatstrin ...
- 剑指Offer 20. 包含min函数的栈 (栈)
题目描述 定义栈的数据结构,请在该类型中实现一个能够得到栈中所含最小元素的min函数(时间复杂度应为O(1)). 题目地址 https://www.nowcoder.com/practice/4c77 ...
- RSA加密解密实现(JAVA)
1.关于RSA算法的原理解析参考:http://www.ruanyifeng.com/blog/2013/06/rsa_algorithm_part_one.html 2.RSA密钥长度.明文长度和密 ...
- canvas 绘画随机点
直接看图吧: 这样的随机点,是小圆点组成的,然后一直在动,记录一下,万一以后要用到呢: canvas的具体设置我就不写了,另一篇文档里有: drawRandomDot () { let leftCan ...
- Vagrant 创建虚拟环境
1. 添加box vagrant box add --name centos6.8/cms boxname.box 2.初始化admin环境 vagrant init centos6.8/cms ad ...
- mongo 索引,速度
(如有打扰,请忽略)阿里云ECS大羊群,2U4G低至1.4折,限实名新用户,需要的点吧https://promotion.aliyun.com/ntms/act/vm/aliyun-group/tea ...
- C++学习(三十八)(C语言部分)之 排序(冒泡 选择 插入 快排)
算法是解决一类问题的方法排序算法 根据元素大小关系排序 从小到大 从大到小冒泡 选择 插入 快排希尔排序 归并排序 堆排序 冒泡排序 从头到尾比较 每一轮将最大的数沉底 或者最小数字上浮 选择排序 1 ...
- linux-linnode满了的提示
线上有一台web服务器磁盘检测告警了,提示空间不足,登到服务器查看 <ignore_js_op> touch:cannot touch `furm.html': No space left ...