一般情况下Oracle的备份都应该用RMAN来处理,不过也有特殊情况下,可以使用批处理调用exp来做逻辑备份的。今天就有个特殊情况,要在Windows下完成exp和zip操作,用日期命名文件。
记录一下批处理的操作,特别是用到了forfiles.exe命令,类似于Unix下的find
reg add "HKEY_CURRENT_USER\Control Panel\International" /v sShortDate /t REG_SZ /d yyyy-MM-dd /f set datestr=%date:~0,10% set backupdir=e:\bak set syspass=888888 set owner=a_old_hongta set dmp=%backupdir%\%owner%_%datestr%.dmp set log=%backupdir%\%owner%_%datestr%.log set zip=%backupdir%\%owner%_%datestr%.zip REM export schema and zip it exp system/%syspass% owner=%owner% file=%dmp% log=%log% zip %zip% %dmp% %log% del %dmp% %log% REM delete 7 days old files forfiles.exe /m *.zip /d -7 /c "cmd /c del /s @path"