Linux平台下Oracle定时备份数据
临时收到一个任务,就是在生产环境上定时备份oracle的数据。空闲时间搞了一下,真是一波三折,过程有点小郁闷,结果哈哈。现在进行总结一下
(1)新建一个shell脚本test.sh
#!/bin/bash
currentTime=`date +%Y%m%d` /app/admin/product/11.2.0/dbhome_1/bin/exp 用户名/密码@数据库地址 file=/app/admin/admin/bpmtest/back- updata/${currentTime}.dmp
(2)chmod 744 test.sh
(3)使用linux的crontab命令定时备份
crontab -e 进入vim编辑模式 插入 15 14 * * * /app/admin/admin/bpmtest/back-updata/test.sh (每天14时15分定时备份)
可以使用 crontab -l 查看当前用户定时的任务
(4)错误信息排查并解决:
后面发现定时任务不执行,一开始以为脚本写错了,不过在linux下直接使用./test.sh发现正常执行。
于是,查看了cron日志,vim /var/log/cron发现报错了:(admin) MAIL (mailed 77 bytes of output but got status 0x004b#012)
百度查了一下,好象crontab执行错误的话是以邮件通知的。
更改了执行的脚本test.sh,将错误信息输入到文件中,如下:
#!/bin/bash
currentTime=`date +%Y%m%d`
/app/admin/product/11.2.0/dbhome_1/bin/exp 用户名/密码@数据库地址 file=/app/admin/admin/bpmtest/back-
updata/${currentTime}.dmp >/app/admin/admin/bpmtest/back-updata/${currentTime}.txt 2>&1
执行后查看错误文件,发现报错信息:Message 206 not found; No message file for product=RDBMS, facility=EXP: Release 11.2.0.1.0
后面百度了一下,需要引入oracle的环境变量,重新修改test.sh如下:
#!/bin/bash
export ORACLE_HOME=/app/admin/product/11.2.0/dbhome_1 export ORACLE_SID=bpmtest currentTime=`date +%Y%m%d` /app/admin/product/11.2.0/dbhome_1/bin/exp 用户名/密码@数据库地址 file=/app/admin/admin/bpmtest/back- updata/${currentTime}.dmp >/app/admin/admin/bpmtest/back-updata/${currentTime}.txt 2>&1
后来又要定时删除备份的数据,服务器只保留最近7天的数据备份。发现在shell中linux命令不执行,后来查了一下,需要导入PATH环境变量,且执行命令需要写全路径。代码如下:
#!/bin/bash
export ORACLE_HOME=/app/admin/product/11.2.0/dbhome_1
export ORACLE_SID=bpmprd
export PATH=/usr/lib64/qt-3.3/bin:/usr/local/bin:/bin:/usr/bin:/usr/local/sbin:/usr/sbin:/sbin:/home/admin/bin:/sbin:/usr/sbin:/app/admin/product/11.2.0/dbhome_1/bin
currentTime=`date +%Y%m%d`
/usr/bin/find /app/admin/admin/back-updata/ -mtime +5 -name "*.dmp" -exec rm -rf {} \;
/app/admin/product/11.2.0/dbhome_1/bin/exp bas5/bas5@10.100.2.74/bpmprd file=/app/admin/admin/back-updata/${currentTime}.dmp > /app/admin/admin/back-updata/dmp.log 2>&1
~
Linux平台下Oracle定时备份数据的更多相关文章
- Linux定时备份数据到百度云盘
导读:如今的百度云盘免费容量都是2T了,即使把电脑上所有的东东都放上去,也还有大把的剩余空间.对于站长来说,是完全可以充分利用这些硬盘空间的,现在我们就用百度云盘来备份Linux服务器上的数据. 一直 ...
- Linux平台下Lotus Domino服务器部署案例
Linux平台下Lotus Domino服务器部署案例 几年前我写了篇<RHAS2.1下安装中文LotusDominoR6.5图解>这篇文档被多个大型网站转载,曾帮助过很多公司系统管理员部 ...
- ORACLE定时备份方案
ORACLE定时备份方案 采用ORACLE的EXP工具,实现ORACLE的备份:采用LINUX的服务crond实现定时功能. 1 编辑SH,实现备份功能 #vi oracle_backup.sh,输入 ...
- Linux平台下:块设备、裸设备、ASMlib、Udev相关关系
对磁盘设备(裸分区)的访问方式分为两种:1.字符方式访问(裸设备):2.块方式访问 Solaris平台 : 在Solaris平台下,系统同时提供对磁盘设备的字符.块方式访问.每个磁盘有两个设备文件名: ...
- oracle定时备份与删除N天前备份文件
oracle定时备份数据库,以及删除7天前备份的数据. 1.创建存放备份目录: mkdir /home/oracle/data_backup mkdir /home/oracle/log_backup ...
- linux下使用crontab定时备份MYSQL数据库的方法:
摘要 linux下使用crontab定时备份MYSQL数据库的方法: 只需按照下面3步做,一切都在你的掌控之下: 第一步:在服务器上配置备份目录代码: ------------------------ ...
- 在linux平台下,设置core dump文件属性(位置,大小,文件名等)
在linux平台下,设置core dump文件生成的方法: 1) 在终端中输入ulimit -c 如果结果为0,说明当程序崩溃时,系统并不能生成core dump. 2) 使用ulimit -c un ...
- Linux tar命令高级用法——备份数据
Linux tar命令高级用法——备份数据 2015-12-31 Linux学习 Linux上有功能强大的tar命令,tar最初是为了制作磁带备份(tape archive)而设计的,它的作用是把文件 ...
- Windows平台下Oracle实例启动过程中日志输出
Windows平台下Oracle实例启动过程中日志输出记录. 路径:D:\app\Administrator\diag\rdbms\orcl\orcl\trace\alert_orcl.log 输出内 ...
随机推荐
- nginx tomcat https配置方案
nginx目录下配置: ssl目录下 添加 证书和密码,如图 /etc/nginx/conf.d 下修改配置文件 HTTP域名的配置: ## Basic reverse proxy server # ...
- 2534: Uva10829L-gap字符串
2534: Uva10829L-gap字符串 Time Limit: 10 Sec Memory Limit: 128 MBSubmit: 177 Solved: 66[Submit][Statu ...
- Less-minxin传参
//mixin传参 --简单传参,example: .border-radius(@radius) { -webkit-border-radius: @radius; -moz-border-radi ...
- 记录--关于Jquery uploadify 不能动态传值的问题(java)
动态传值纠结多时后无效, 后得下面一番代码,依旧无效~~ 纳了几个闷,心灰意冷下 清理了 tomcat 一次 再出运行 可以了 真心纠结很久很久 无奈之下还是得 清理清理tomcat: ...
- sqlserver----记录转载(行转列)、列转行、pivot、unpivot
CREATE TABLE [StudentScores] ( ), --学生姓名 ), --科目 [Score] FLOAT, --成绩 ) 如果我想知道每位学生的每科成绩,而且每个学生的全部成绩排成 ...
- adb 连接小米1S真机调试
Ubuntu13.04 adb连接小米1S真机调试 搭好Android开发环境后,新建了一个Android Application工程.准备运行,问题来了,模拟器太慢了,怎么在真机上调试呢?百度之,G ...
- SQL小练习
1.现在有两张表订单表TB_ORDER,包括字段:order_id(订单号),username(用户名),amount(订单金额),order_time(下单时间), product_id(商品ID) ...
- 缓存在中间件中的应用机制(Django)
缓存在中间件中的应用机制(Django) (右键图片:在新标签页中打开连接)
- flannel源码分析---初始化部分
// main.go 1.func main() ..... 首先调用sm, err := newSubnetManager()创建subnet manager .... 调用ctx, cancel ...
- Linux network 资料链接
1.iptables 基础 https://wiki.centos.org/HowTos/Network/IPTables 2.HOWTOs on netfilter site http://www. ...