oracle使用expdp备份数据库,
目录
- oracle使用expdp备份数据库
- 备份shell脚本
- 创建定时任务
oracle使用expdp备份数据库
备份shell脚本
#!/bin/sh
#获取当前时间
BACKUPTIME=$(date +%Y%m%d)
#数据库备份DATA_PUMP_DIR目录的绝对路径
DMPDIR=/u01/app/oracle/admin/orcl/dpdump
#备份的文件名
DMPNAME=bk-$BACKUPTIME.dmp
#导出日志文件
LOGNAME=bk-$BACKUPTIME.log
#压缩后的文件
ZIPNAME=bk-$BACKUPTIME.dmp.zip
expdp 用户名/密码@实例名 directory=DATA_PUMP_DIR schemas=用户名 dumpfile=$DMPNAME logfile=$LOGNAME
cd $DMPDIR
zip -9 $ZIPNAME $DMPNAME
rm -rf $DMPDIR/$DMPNAME
#删除30天以前的文件
find ./ -mtime +30 -name "bk-*" -exec rm -rf {} \;
创建定时任务
#!/bin/sh
#获取当前时间
BACKUPTIME=$(date +%Y%m%d)
#数据库备份DATA_PUMP_DIR目录的绝对路径
DMPDIR=/u01/app/oracle/admin/orcl/dpdump
#备份的文件名
DMPNAME=bk-$BACKUPTIME.dmp
#导出日志文件
LOGNAME=bk-$BACKUPTIME.log
#压缩后的文件
ZIPNAME=bk-$BACKUPTIME.dmp.zip
expdp 用户名/密码@实例名 directory=DATA_PUMP_DIR schemas=用户名 dumpfile=$DMPNAME logfile=$LOGNAME
cd $DMPDIR
zip -9 $ZIPNAME $DMPNAME
rm -rf $DMPDIR/$DMPNAME
#删除30天以前的文件
find ./ -mtime +30 -name "bk-*" -exec rm -rf {} \;
推荐linux中使用oracle用户环境执行crontab任务。加入**. ~/.bash_profile;**是为了获取用户的环境变量,因为在测试中出现expdp命令不能使用的情况。
crontab -e
30 1 * * * . ~/.bash_profile; /bin/sh /home/oracle/autoBackupOracle.sh
本站文章为和通数据库网友分享或者投稿,欢迎任何形式的转载,但请务必注明出处.
同时文章内容如有侵犯了您的权益,请联系QQ:970679559,我们会在尽快处理。