Windows下Oracle定时备份(全量备份)

关于Windows下oracle全量备份的文章,不少网站都有,写下本文不过是为了之后方便查找,不用再处处找。html

如下些许内容有所参考到其余人所写内容,这里无心冒犯,本文引用内容部分会附上参考地址,还望原做者见谅。数据库

备份脚本windows

新建txt文档,把脚本复制进去后改文件格式为bat文件,双击运行便可测试该脚本是否有误。oracle

这里要说明一下,开始把脚本拿过来执行时,一直未能成功备份数据库测试

用bat的pause暂停调试发现了一些问题,有时不注意可能会在定义的变量如BACKUPDATE、USER等后面带了空格网站

这个时候问题就来了,致使参数的不正确,因此这里需注意!spa

@echo off   
echo ================================================   
echo  Windows环境下Oracle数据库的自动备份脚本  
echo  1. 使用当前日期命名备份文件。  
echo  2. 自动删除7天前的备份。  
echo ================================================  
echo  以“YYYYMMDD”格式取出当前时间。  
set BACKUPDATE=%date:~0,4%%date:~5,2%%date:~8,2%%time:~0,2%%time:~3,2%%time:~6,2%
echo  设置用户名、密码和要备份的数据库
set USER=ora_user
set PASSWORD=ora_name
set DATABASE=conn_db
echo  建立备份目录
if not exist "E:\backup\data"       mkdir E:\backup\data  
if not exist "E:\backup\log"        mkdir E:\backup\log  
set DATADIR=E:\backup\data
set LOGDIR=E:\backup\log
exp %USER%/%PASSWORD%@%DATABASE% file=%DATADIR%\data_%BACKUPDATE%.dmp log=%LOGDIR%\log_%BACKUPDATE%.log
echo  删除7天前的备份。
forfiles /p "%DATADIR%" /s /m *.* /d -7 /c "cmd /c del @path"
forfiles /p "%LOGDIR%" /s /m *.* /d -7 /c "cmd /c del @path"
exit

注:该脚本参考Windows环境下Oracle数据库的自动备份脚本.net

定时任务调试

这里须要用到Windows的【任务计划程序】,操做按照下列截图一一操做。code

1、快捷查询:
clipboard.png

2、选择任务计划程序:
clipboard.png

3、建立基本任务:

clipboard.png

4、填写任务相关信息:
1)定时任务描述
clipboard.png
2)任务执行时间
clipboard.png
clipboard.png

clipboard.png
选择刚刚写的数据库备份脚本
clipboard.png

最后在任务列表里能够看到刚刚建立的定时任务,那么这个任务从设定的时间开始则会天天执行一次,即达到定时备份任务了
clipboard.png
注:以上内容参考 定时备份ORACLE数据库:[1]windows环境下

以上即是Windows下定时全量备份Oracle数据库了

相关文章
相关标签/搜索