Windows环境下实现Oracle以压缩格式(使用winrar软件压缩)自动备份解决方法。
1.新建txt文件,将下列文本Copy进去,适当修改后保存为bat格式
2.双击该bat测试是否正常。
3.若正常,新建windows定时任务,指向该文件。
@echo off echo ================================================ echo Windows环境下Oracle数据库的自动备份脚本--YPWANG echo 1. 使用当前日期命名备份文件。 echo 2. 采用WinRAR压缩DMP和LOG文件 echo 3. 自动删除30天前的备份。(可修改) echo ================================================ ::以“YYYYMMDD”格式取出当前时间。 set BACKUPDATE=%date:~0,4%%date:~5,2%%date:~8,2% ::设置用户名、密码和要备份的数据库实例。 set USER=test set PASSWORD=123 set DATABASE=orcl ::创建备份目录。 ::下面修改为自己的设置,设置为自己想要备份的位置 if not exist "I:ackup" mkdir I:ackup set BACKUP=I:ackup ::软件winrar 安装位置可执行文件,注意路径不要有空格,必要时候可以把安装位置rar.exe单独拷贝出来 set RAREXE=e:WinRAR ar.exe ::执行导出 exp %USER%/%PASSWORD%@%DATABASE% file=%BACKUP%data_%BACKUPDATE%.dmp log=%BACKUP%log_%BACKUPDATE%.log ::执行压缩 %RAREXE% a %BACKUP%data_%BACKUPDATE%.rar %BACKUP%data_%BACKUPDATE%.dmp %BACKUP%log_%BACKUPDATE%.log ::压缩完成后执行删除导出文件 del /q %BACKUP%data_%BACKUPDATE%.dmp del /q %BACKUP%log_%BACKUPDATE%.log ::删除30天前的备份。 具体删除天数把 下面30 改为自己的天数 forfiles /p %BACKUP% /s /m *.* /d -30 /c "cmd /c del @path" exit