oracle自动备份数据库

@echo off

title 数据库备份[%DATE% %TIME%]
color 02

set "Today=%DATE%"
set "Today=%Today:~0,4%%Today:~5,2%%Today:~8,2%"   

rem  设置导出文件名称、日志名称
set "dmpname=%Today%"
rem set "logname=%Today%"

echo 开始备份 A
rem expdp A_APP/xpar@A dumpfile=%dmpname%_APP.dmp logfile="%logname%_app.log"
expdp A_APP/xpar@A dumpfile=%dmpname%_APP.dmp logfile="app.log"
expdp A_MD/xpar@A dumpfile=%dmpname%_MD.dmp logfile="md.log"
expdp A_ODS/xpar@A dumpfile=%dmpname%_ODS.dmp logfile="ods.log"


echo 开始备份 B
expdp B_APP/xpar@B dumpfile=%dmpname%_APP.dmp logfile="app.log"
expdp B_MD/xpar@B dumpfile=%dmpname%_MD.dmp logfile="md.log"
expdp B_ODS/xpar@B dumpfile=%dmpname%_ODS.dmp logfile="ods.log"

@pause 

以上,自动备份所有数据库脚本:dbbak.bat

备份到dump目录后自动压缩  dbtar.bat

@echo off

title 压缩[%DATE%%TIME%]
COLOR 0B
set "Today=%DATE% 
set "Today=%Today:~0,4%%Today:~5,2%%Today:~8,2%"   
set "filename=%Today%"
set "dmpname=%Today%"

c:
cd C:Program Files (x86)WinRAR

echo 正在压缩A...
echo=
winrar a -ep1 D:自动备份数据库\%filename%A.rar  
D:appAdministratoradminAdpdump%dmpname%_APP.DMP  
D:appAdministratoradminAdpdump%dmpname%_MD.DMP  
D:appAdministratoradminAdpdump%dmpname%_ODS.DMP  
echo 正在压缩B...
echo=
winrar a -ep1 D:自动备份数据库\%filename%B.rar  
D:appAdministratoradminBdpdump%dmpname%_APP.DMP  
D:appAdministratoradminBdpdump%dmpname%_MD.DMP  
D:appAdministratoradminBdpdump%dmpname%_ODS.DMP

goto start
winrar a -ep1 D:自动备份数据库\%filename%B.rar  D:appAdministratoradminGZJZdpdump*.DMP
:start
rem echo 将新文件加入压缩包...
rem winrar a D:自动备份数据库	est.rar D:123.txt

echo 压缩完成...
echo=
@pause

 选择需要备份的数据库进行备份/压缩命令类似

@echo off

title 数据库备份[%DATE% %TIME%]
color 02

set "Today=%DATE%"
set "Today=%Today:~0,4%%Today:~5,2%%Today:~8,2%"   

rem  设置导出文件名称、日志名称
set "dmpname=%Today%"
rem set "logname=%Today%"

echo 请选择要备份的数据库
echo 0、退出
echo 1、全部备份
echo 2、备份数据库 A
echo 3、B
echo 4、C
echo 5、D
set /p start_service_no=请输入:

if "%start_service_no%" == "0" goto :quit
if "%start_service_no%" == "1" goto :no1
if "%start_service_no%" == "2" goto :no2
if "%start_service_no%" == "3" goto :no3
if "%start_service_no%" == "4" goto :no4
if "%start_service_no%" == "5" goto :no5

:no1
expdp A_APP/xpar@A  dumpfile=%dmpname%_APP.dmp logfile="app.log"
expdp A_MD/xpar@A  dumpfile=%dmpname%_MD.dmp logfile="md.log"
 
:no2
.
.
.

:quit
@pause 
原文地址:https://www.cnblogs.com/Nicloe2333/p/11766011.html