@
echo
off
echo
开始
REM ###########################################################
REM # Windows Server 2003下Oracle数据库自动备份批处理脚本
REM ###########################################################
REM 取当前系统时间,可能因操作系统不同而取值不一样
set CURDATE=%
date
:~0,4%%
date
:~5,2%%
date
:~8,2%
set CURMON=%
date
:~0,4%%
date
:~5,2%
set CURTIME=%time:~0,2%
REM 小时数如果小于10,则在前面补0
if
"%CURTIME%"
==
" 0"
set CURTIME=00
if
"%CURTIME%"
==
" 1"
set CURTIME=01
if
"%CURTIME%"
==
" 2"
set CURTIME=02
if
"%CURTIME%"
==
" 3"
set CURTIME=03
if
"%CURTIME%"
==
" 4"
set CURTIME=04
if
"%CURTIME%"
==
" 5"
set CURTIME=05
if
"%CURTIME%"
==
" 6"
set CURTIME=06
if
"%CURTIME%"
==
" 7"
set CURTIME=07
if
"%CURTIME%"
==
" 8"
set CURTIME=08
if
"%CURTIME%"
==
" 9"
set CURTIME=09
set CURTIME=%CURTIME%%time:~3,2%%time:~6,2%
REM 设置所有者、用户名和密码
set OWNER=xxx(这里写你的数据库服务名)
set USER=xxx(你要备份的数据库对应的某个用户)
set PASSWORD=xxx(对应密码)
REM 创建备份用目录,目录结构为oraclebak/YYYYMMDD/
if
not exist
"oraclebak"
mkdir
oraclebak
cd oraclebak
if
not exist
"%CURMON%"
mkdir
%CURMON%
set FILENAME=%CURMON%/%USER%_%CURDATE%_%CURTIME%.DMP
set EXPLOG=%CURMON%/%USER%_%CURDATE%_%CURTIME%_log.log
REM 调用ORACLE的
exp
命令导出用户数据
exp
%USER%/%PASSWORD%@%OWNER% file=%FILENAME% log=%EXPLOG% owner=%USER% grants=n