oracle数据库自动备份压缩bat

以下为window下自动备份oracle数据库的bat脚本,可实现备份数据库的.dmp文件,并且压缩。
在服务器设置一个每天凌晨执行的计划任务,可时间每天自动化备份打包。

rem windows环境下Oracle数据库的自动备份脚本。
rem 可以将本批处理设成windows任务计划下自动执行。

@echo off
@echo ================================================
@echo  windows环境下Oracle数据库的自动备份脚本
@echo  说明:启动备份时,需要配置以下变量
@echo    1、BACKUP_DIR           指定要备份到哪个目录
@echo    2、ORACLE_USERNAME      指定备份所用的Oracle用户名
@echo    3、ORACLE_PASSWORD      指定备份所用的Oracle密码
@echo    4、ORACLE_DB            指定备份所用的Oracle连接名
@echo    5、BACK_OPTION          备份选项,可以为空,可以为full=y,可以为owner=a用户,b用户  等等....
@echo    6、RAR_CMD              指定RAR命令行压缩工具所在目录
@echo ================================================



rem 以下变量需要根据实际情况配置------> 注意:此脚本必须放在BACKUP_DIR目录下
set BACKUP_DIR=E:\apache-tomcat-6.0.35\webapps\trace\Download\DBbaker
set ORACLE_USERNAME=ysdb
set ORACLE_PASSWORD=ysdb
set ORACLE_DB=orcl10
set BACK_OPTION=
set RAR_CMD="C:\Program Files\WinRAR\WinRAR.exe"

for /f "tokens=1,2" %%a in ('date/t') do set TODAY=%%a
set BACK_NAME=%ORACLE_DB%_%TODAY%
set BACK_FULL_NAME=%BACKUP_DIR%\%BACK_NAME%


rem 开始备份
exp %ORACLE_USERNAME%/%ORACLE_PASSWORD%@%ORACLE_DB%  %BACK_OPTION% file="%BACK_FULL_NAME%.dmp"
rem  log="%BACK_FULL_NAME%exp.log"

rem 压缩并删除原有文件
%RAR_CMD% a -df "%BACK_FULL_NAME%back.rar" "%BACK_FULL_NAME%.dmp"
rem  "%BACK_FULL_NAME%exp.log"


以下为用于取线上服务器已经备份打包好的数据库备份的bat脚本。可以设置一个计划任务每天自动执行
rem windows环境下,线上数据库备份文件下载到本地脚本。
rem 可以将本批处理设成windows任务计划下自动执行。


rem 以下变量需要根据实际情况配置------> 注意:此脚本必须放在和wget在同一目录下,文件将被下载到当前目录

for /f "tokens=1,2" %%a in ('date/t') do set TODAY=%%a
set BACK_NAME=orcl10_%TODAY%back.rar
set url=http://211.112.121.19:8080/trace/Download/DBbaker/%BACK_NAME%

wget %url%

猜你喜欢

转载自jimmy9495.iteye.com/blog/1781679