
1
新建名为"oracleBackup"的文本文档(名字自己定),然后重命名后缀为"oracleBackup.bat"的批处理文件。
2
在oracleBackup.bat文件上点击右键,选择编辑,填写以下相关内容:
rem ---------------------------------------------------------------------------
rem windows环境下Oracle数据库的自动备份脚本。
rem 可以将本批处理设成windows任务计划下自动执行。
@echo off
@echo ================================================
@echo windows环境下Oracle数据库的自动备份脚本
@echo 说明:启动备份时,需要配置以下变量
@echo1、BACKUP_DIR 指定要备份到哪个目录
@echo2、ORACLE_USERNAME 指定备份所用的Oracle用户名
@echo3、ORACLE_PASSWORD 指定备份所用的Oracle密码
@echo4、ORACLE_DB指定备份所用的Oracle连接名
@echo5、BACK_OPTION 备份选项,可以为空,可以为full=y,可以为owner=a用户,b用户 等等....
@echo6、RAR_CMD 指定RAR命令行压缩工具所在目录
@echo ================================================
rem 以下变量需要根据实际情况配置------>注意:此脚本必须放在E:\backup目录下
set BACKUP_DIR=E:\backup
set ORACLE_USERNAME=se
set ORACLE_PASSWORD=xj
set ORACLE_DB=xj_orcl
set BACK_OPTION= OWNER=se
set RAR_CMD="C:\Program Files\WinRAR\Rar.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" log="%BACK_FULL_NAME%exp.log"
rem 压缩并删除原有文件
%RAR_CMD% a -df "%BACK_FULL_NAME%back.rar" "%BACK_FULL_NAME%.dmp" "%BACK_FULL_NAME%exp.log"
rem ---------------------------------------------------------------------------
forfiles /m *.rar -d -7 /c "cmd /c del /f @path"
3
配置相关参数:
BACKUP_DIR:该参数为备份数据文件的存放位置,可根据实际情况进行设置(注:设置的文件路径不允许包含汉字、特殊字符等内容)。
ORACLE_USERNAME:该参数为指定备份的Oracle数据库用户名。
ORACLE_PASSWORD:该参数为指定备份的Oracle数据库密码。
ORACLE_DB:该参数为指定备份的Oracle数据库连接名。
BACK_OPTION:该参数为备份选项,可以为空,也可以为full=y等。
RAR_CMD:指定RAR命令行压缩工具所在目录
END
安装软件
1
下载WINRAR安装包。
2
点击"wrar520sc_setup.exe",进行安装软件。
3
根据软件的安装路径,在命名的bat处理文件中配置:RAR_CMD参数。
END
添加定时任务
打开电脑的控制面板,选择"任务计划",双击打开。页面如图所示:
双击打开添加定时任务,点击下一步进入相关设置页面。页面如图所示:
单击浏览按钮,找到oracleBackup.bat文件添加,然后进行配置:根据实际情况选择要备份的时间类型,此处以每天执行为例,选择每天,点击下一步,设置执行时间。
输入执行定时任务机器的用户名及密码,点击下一步,进入完成界面,点击完成,至此,Oracle数据库定时任务备份的设置。
5
利用修改机器时间进行定时任务的测试。
需要写个bat脚本,然后在windows计划任务里调用此脚本可实现每天自动备份。工具:Oracle 10g
步骤:
1、在某个盘符某个路径(以C盘data目录为例),创建oraclebackup.txt文件,内容如下:
@echo off
echo 删除10天前的备分文件和日志
forfiles /p "c:/data/" /m *.dmp /d -10 /c "cmd /c del @path"
forfiles /p "c:/data/" /m *.log /d -10 /c "cmd /c del @path"
echo 正在备份 Oracle 数据库,请稍等……
exp 用户名/密码@实例名 file=c:/data/mdb%date:~0,4%%date:~5,2%%date:~8,2%.dmp log=c:/data//mdb%date:~0,4%%date:~5,2%%date:~8,2%.log full=y buffer=65535
echo 任务完成!
2、保存上述文件后,将文件名的后缀改成.bat
3、进入windows的控制面板,打开计划与任务,新建任务,点击浏览,选择刚才新建的c盘data目录下的oraclebackup.bat文件。接着选择每天晚上22:00点执行,再输入本机的administrator密码即可。
注意事项:
exp语句中的用户名密码等内容,需要根据实际需要来填写。
exp 用户名/密码@SID file=E:\OracleBackDB\库名%date:~11,3%.dmp owner=(用户名)你用上面的语句,修改后保存成bat文件,放到任务计划里运行,可以完成每天定时备份,保留一个星期备份文件。第二个星期时候会自动覆盖
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)