由于近期工作的原因,要做一个简单的oracle数据自动备份,因为是一个单体应用,所以就利用了linux的定时任务和oracle的exp进行数据备份,如果有不足和需要改正的地方,欢迎各位高手指正,不胜感激。
下边就开始具体的操作:
一、创建备份目录并赋予权限
mkdir -p /u01/oracle_bak_data #新建数据备份目录
mkdir -p /u0a/oracle_bak_shell #新建Oracle备份脚本目录
chown -R oracle:oinstall /u01/oracle_bak_data
chown -R oracle:oinstall /u01/oracle_bak_shell
复制
二、创建备份脚本
cd /u0a/oracle_bak_shell
vi bak_data_shell.sh
在打开的vi编辑页面中,输入i,将以下信息输入到脚本中:
oracle的信息可以在profile配置文件中查看
#!/bin/sh
echo "*****ready for play*****"
export ORACLE_SID=TEST
export ORACLE_BASE=/u01/oracle
export ORACLE_HOME=/u01/oracle/11.0.2
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$ORACLE_HOME/lib:/lib:/usr/lib:/usr/local/lib
export PATH=$ORACLE_HOME/bin:/bin:/usr/bin:/usr/sbin:/usr/local/bin
export LANG=en_us.UTF-8
export NLS_LANG=SIMPLIFIED CHINESE_CHINA.ZHS16GBK
dateTime=`date +%Y_%m_%d`
days=3
orsid='ip:端口/TEST'
oraowner=test
bakuser=test
bakpass=test
bakdir=/u01/oracle_bak_data
bakdata=$oraowner"_"$dateTime.dmp
baklog=$oraowner"_"$dateTime.log
ordatabak=$orowner"_"$dateTime.tar.gz
cd $bakdir
echo "*****starting bak*****"
exp $bakuser/$bakpass@$orsid grants=y owner=$oraowner file=$bakdir/$bakdata log=$bakdir/$baklog
echo "*****end bak*****"
echo "*****starting tar*****"
tar -zcvf $ordatabak $bakdata $baklog
echo "*****end tar*****"
echo "*****delete bak_data*****"
find $bakdir/ -type f -name "*.log" -exec rm {} \;
find $bakdir/ -type f -name "*.dmp" -exec rm {} \;
find $bakdir/ -type f -name "*.tar.gz" -mtime +$days -exec rm -rf {} \;
echo "*****end delete*****"
echo "*****end bak*****"
复制
然后按“ESC”键,输入:wq! 然后回车
三、给脚本添加X
chmod +X bak_data_shell.sh
复制
四、编辑系统定时任务
crontab -e
#输入一下信息
00 01 * * * /u01/oracle_bak_shell/bak_data_shell.sh #每天凌晨1点执行
:wq!
复制
五、重启crontab
service crond restart
复制
文章转载自程序猿每日分享,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。
评论
相关阅读
【纯干货】Oracle 19C RU 19.27 发布,如何快速升级和安装?
Lucifer三思而后行
638次阅读
2025-04-18 14:18:38
Oracle RAC 一键安装翻车?手把手教你如何排错!
Lucifer三思而后行
618次阅读
2025-04-15 17:24:06
XTTS跨版本迁移升级方案(11g to 19c RAC for Linux)
zwtian
517次阅读
2025-04-08 09:12:48
Oracle数据库一键巡检并生成HTML结果,免费脚本速来下载!
陈举超
516次阅读
2025-04-20 10:07:02
【ORACLE】记录一些ORACLE的merge into语句的BUG
DarkAthena
475次阅读
2025-04-22 00:20:37
Oracle 19c RAC更换IP实战,运维必看!
szrsu
452次阅读
2025-04-08 23:57:08
【活动】分享你的压箱底干货文档,三篇解锁进阶奖励!
墨天轮编辑部
451次阅读
2025-04-17 17:02:24
一页概览:Oracle GoldenGate
甲骨文云技术
449次阅读
2025-04-30 12:17:56
【ORACLE】你以为的真的是你以为的么?--ORA-38104: Columns referenced in the ON Clause cannot be updated
DarkAthena
448次阅读
2025-04-22 00:13:51
火焰图--分析复杂SQL执行计划的利器
听见风的声音
396次阅读
2025-04-17 09:30:30