Oracle数据库定时备份.docx
文本预览下载声明
Oracle数据库定时自动备份批处理代码(Windows)第一部分,逻辑备份下面是:AutoBackup_Logic.bat --逻辑备份的主文件,直接在计划任务中调用就可以了。@echo offremrem 需要配置的参数说明:rem BAT_HOME:即本批处理所在的目录;rem DUMP_DIR:即要备份到的数据文件目录,存在与数据字典表:dba_directories 中。remset BAT_HOME=E:\BATset DUMP_DIR=E:\Temp\DBBackupset BKFILE=%Date:~0,4%%Date:~5,2%%Date:~8,2%set HHMMSS=%time:~0,2%%time:~3,2%%time:~6,2%call %BAT_HOME%\LogicBackup.bat %DUMP_DIR% %BAT_HOME%\LogicBackup_%BKFILE%%HHMMSS%.logecho Completed!下面是:LogicBackup.bat@echo offrem call LogicBackup.bat %DUMP_DIR%rem ==========================================================================================rem 本批处理实现支持expdp数据泵的Oracle数据库版本的数据库逻辑备份,流程为:导出数据到rem dump_dir 数据库目录下,然后把dmp文件以rar格式放入当天备份日期命名的目录下,便于以后按rem 照日期恢复。remrem 需要配置的参数说明:rem BAT_HOME:即本批处理所在的目录;rem BKDIR:是调用本批处理时传进来的参数 dump_dir,即要备份到的数据文件目录。remrem Author: Sanlavorem Time: 2007-06-07rem ==========================================================================================remecho 备份开始...echo 当前的时间是: %DATE% %time%set BAT_HOME=E:\BATset BKDIR=%1set BKFILE=%Date:~0,4%%Date:~5,2%%Date:~8,2%set HHMMSS=%time:~0,2%%time:~3,2%%time:~6,2%expdp system/sys parfile=%BAT_HOME%\ScriptsLib\parfiletest.sqlif not exist %BKDIR%\%BKFILE%_LOGIC (md %BKDIR%\%BKFILE%_LOGIC) else (echo 目录 %BKDIR%\%BKFILE%_LOGIC 已经存在)echo 开始压缩文件...rar a %BKDIR%\%BKFILE%_LOGIC\%BKFILE%%HHMMSS%_LOGIC_FULL.rar %BKDIR%\*.dmpecho 压缩文件 %BKFILE%%HHMMSS%_LOGIC_FULL.rar 完成echo 开始移动文件...move %BKDIR%\*.dmp %BKDIR%\%BKFILE%_LOGIC\move %BKDIR%\*.log %BKDIR%\%BKFILE%_LOGIC\echo 移动文件完成echo 开始删除dmp文件...del /f /s /q %BKDIR%\%BKFILE%_LOGIC\*.dmpecho 删除dmp文件完成net send %userdomain% 数据库逻辑备份已于:%DATE% %time% 完成!echo .echo 备份已于:%DATE% %time% 完成!echo .rem 移动批处理的日志文件到备份目录下面xcopy %BAT_HOME%\LogicBackup_%BKFILE%*.log %BKDIR%\%BKFILE%_LOGIC\echo Successfully Completed!下面是expdp的parfile参数的文件(parfiletest.sql)内容:directory=dump_dirdumpfile=DBBackup_Logic_%U.dmplogfile=DBBackup_Logic.logfilesize=80Mfull=yjob_name=EXP_DB_FULL到此,逻辑备份批处理完成,可以用命令来定时执行,例如:c:\at 06:06 /every:S E:\BAT\AutoBackup_Logic.bat这
显示全部