针对简单的Oracle备份恢复于批处理文件时,在Oracle备份恢复于批处理文件的运行中我们会给你提出三个相关的建议,这些建议都是方便你在Oracle备份恢复于批处理文件时的操作,以下是正文。
简单的Oracle备份恢复批处理文件建议一:
利用任务计划、批处理文件和Oracle的EXP导出功能,可以根据日期自动生成Oracle备份文件,大大方便了Oracle数据备份。:
1、建立批处理文件backup.bat\.
expsystem/managerfile=d:\backup\Oracle\Oracle%date: ~0,10%.dmpowner=systemlog=d: \backup\Oracle\Oracle%date:~0,10%.log
将生成Oracle2006-01-09.dmp文件
expsystem/managerfile=d:\backup\Oracle\ Oracle%date:~11,3%.dmpowner=systemlog=d: \backup\Oracle\Oracle%date:~11,3%.log
将生成Oracle星期一.dmp文件,则每周循环保留一个备份文件,共7个备份文件循环
2、添加一个任务计划
利用任务计划向导,根据备份策略设置自动执行任务的时间频率(例如每天零时),执行d:\Oracle\backup.bat
3、以后每天将在目录中生成形如“Oracle2005-08-31.dmp和Oracle2005-08-31.log”的备份和日志文件。
说明:
1、%date%的值在不同的系统、语言版本下可能是不一样的,控制面板里面区域选项的设定也会改变%date%的值。请先在命令行中测试 echo %date% 的返回值。%date:~4,10% 是返回日期函数,~后的***个参数是要截取的起始位置(从0开始),第二个参数是要截取的长度,如没有则是截取到***,参数可酌情修改。
2、如需要准确的时间做为文件名,请用%time%函数,参数同上。
简单的Oracle备份恢复批处理文件建议二:
@echooff setfilename=e:\data_bak\%date:~8,2%日 expuseruserid=user/pass@esdatafile=%filename%.dmp owner=userINDEXES=ygrants=yconstraints= ycompress=ylog=%filename%.log rara%filename%.rar%filename%.* del%filename%.dmp del%filename%.log
放计划任务里面定时执行,
文件名以日期的day部分来命名
备份后调用rar进行压缩
这样可以保存一个月的历史数据
注意:需要把program files/winrar目录下的rar.exe拷贝到系统system32目录下
如果是以星期命名,则需要将set filename=e:\data_bak\%date:~8,2%日修改为
set filename=e:\data_bak\%date:~0,3%
简单的Oracle备份恢复批处理文件建议三:
以下为Oracle 自动备份批处理文件内容,请配合任务计划实现
@ECHO OFF
SET BACKPATH=d:\
ECHO 准备备份数据库
REM 7天一个循环
IFEXIST%BACKPATH%\ONEGOTOONE IFEXIST%BACKPATH%\TWOGOTOTWO IFEXIST%BACKPATH%\THREEGOTOTHREE IFEXIST%BACKPATH%\FOURGOTOFOUR IFEXIST%BACKPATH%\FIVEGOTOFIVEIFEXIST %BACKPATH%\SIXGOTOSIX IFEXIST%BACKPATH%\SEVENGOTOSEVEN ECHOE>%BACKPATH%\ONE :ONE SETBACKPATH_FULL=%BACKPATH%\ONE REN%BACKPATH%\ONETWO GOTOBACK :TWO SETBACKPATH_FULL=%BACKPATH%\TWO REN%BACKPATH%\TWOTHREE GOTOBACK :THREE SETBACKPATH_FULL=%BACKPATH%\THREE REN%BACKPATH%\THREEFOUR GOTOBACK :FOUR SETBACKPATH_FULL=%BACKPATH%\FOUR REN%BACKPATH%\FOURFIVE GOTOBACK :FIVE SETBACKPATH_FULL=%BACKPATH%\FIVE REN%BACKPATH%\FIVESIX GOTOBACK :SIX SETBACKPATH_FULL=%BACKPATH%\SIX REN%BACKPATH%\SIXSEVEN GOTOBACK :SEVEN SETBACKPATH_FULL=%BACKPATH%\SEVEN REN%BACKPATH%\SEVENONE GOTOBACK :BACK EXPTESTUSER/TESTFILE=%BACKPATH_FULL%.DMP SETBACKPATH= SETBACKPATH_FULL= EXIT