脚本
OracleBakEveryDay.bat
@echo off echo ================================================ echo Windows环境下Oracle数据库的自动备份脚本 echo 1. 使用当前日期命名备份文件。 echo 2. 自动删除7天前的备份。 echo ================================================ ::以“YYYYMMDD”格式取出当前时间。 ::%date:~0,4% 表示从第0位开始截取到第4位 并且注意所有变量值后边不允许出现空格 set BACKUPDATE=%date:~0,4%%date:~5,2%%date:~8,2% ::设置用户名、密码和要备份的数据库。 set USER=IFTS set PASSWORD=IFTS set DATABASE=ORCL ::创建备份目录。 if not exist "D:ackupdata" mkdir D:ackupdata if not exist "D:ackuplog" mkdir D:ackuplog set DATADIR=D:ackupdata set LOGDIR=D:ackuplog exp %USER%/%PASSWORD%@%DATABASE% file=%DATADIR%data_%BACKUPDATE%.dmp log=%LOGDIR%log_%BACKUPDATE%.log echo %LOGDIR%log_%BACKUPDATE%.log ::删除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
注意:变量赋值的时候不可以有空格,否则会报错!
定时计划
打开控制面板 >> 系统与安全 >> 管理工具 >> 计划任务 【创建基本任务】
接着点击下一步
继续【下一步】
继续【下一步】,此处选择【启动程序】
继续【下一步】,在此处指定脚本所在的路径
继续【下一步】
最后点击【完成】即可。