一.oracle日志的自动备份
在部署一个项目的时候,为了保证数据的安全,我们希望对oracle数据库做本地和异地双重自动定时备份。因为我们使用的操作系统是windows,所以在做这个的时候,就想到了windows的任务计划功能。所以,我们写了如下的批处理脚本,结合oracle的备份工具,实现了数据的自动定时备份。
exp xxxProject/user@passwordfile=e:/xxx/backup/%date:~0,10%.dmp log=e:/xxx/backup/%date:~0,10%.log full=y
二.删除一周以前的旧备份文件
上边说了oracle的数据备份,因为每天都有备份,而且数据量比较大,所以硬盘空间是一个需要考虑的问题。我们部署的应用系统,一周以前的数据库备份数据基本上就是无效的了,存在硬盘上占空间,所以我们就想到了定时清理这些旧备份文件。同样,最简单的方式,windows任务计划结合批处理脚本。
:: delOldFiles.bat - 删除7日前修改的文件 :: Note: 不要将此批处理文件置于需要选择删除文件的目录中 :: 如果首次执行的日期不是2008-07-29,则需调整第八行代码中的保留日期列表 :: 程序需要每日运行至少一次,以便自动更新日期列表 @echo off if "%1"==":" goto %2 if exist c:\_delOldFiles.bat c:\_delOldFiles.bat %0 : Update 2008-07-23 2008-07-24 2008-07-25 2008-07-26 2008-07-27 2008-07-28 2008-07-29 :Update setlocal EnableExtensions set today=%date:~0,10% if not "%today%"=="%9" %0 : Update %4 %5 %6 %7 %8 %9 %today% echo %0 : Update %3 %4 %5 %6 %7 %8 %9 > c:\_delOldFiles.bat :Delete for /r e:/xxx/backup %%f in (*.*) do if "%%~tf" LSS "%3" del "%%f" :End