数据库备份(ms sql server)


@ECHO off

ECHO database bakup start!

REM Backup Database Script Log Files
SET dbbak_dir=e:\cnad_online\
SET dbbak_dir2=e:\cnad_online
SET target_dir="C:\Program Files\Apache Group\Tomcat 5.0\webapps\log\"
SET target_dir2="C:\Program Files\Apache Group\Tomcat 5.0\webapps\log"
if not exist %dbbak_dir% mkdir %dbbak_dir%

REM Backup Database Name
SET Database_Name=cnad
SET Date_Today=%date:~0,4%%date:~5,2%%date:~8,2%

ECHO use master ;>%dbbak_dir%backup_%Date_Today%.sql
ECHO go >>%dbbak_dir%backup_%Date_Today%.sql
rem ECHO SP_ADDUMPDEVICE 'DISK',>>%dbbak_dir%backup_%Date_Today%.sql
rem ECHO '%Database_Name%_%Date_Today%', >>%dbbak_dir%backup_%Date_Today%.sql
rem ECHO '%dbbak_dir%%Database_Name%_%Date_Today%.bak'; >>%dbbak_dir%backup_%Date_Today%.sql
rem ECHO go >>%dbbak_dir%backup_%Date_Today%.sql
ECHO BACKUP DATABASE %Database_Name% >>%dbbak_dir%backup_%Date_Today%.sql
ECHO TO DISK = '%dbbak_dir%%Database_Name%_%Date_Today%.bak' >>%dbbak_dir%backup_%Date_Today%.sql
ECHO WITH INIT , NOUNLOAD ;>>%dbbak_dir%backup_%Date_Today%.sql
ECHO go >>%dbbak_dir%backup_%Date_Today%.sql


REM ECHO use master ;>>%dbbak_dir%backup_%Date_Today%.sql
REM ECHO go >>%dbbak_dir%backup_%Date_Today%.sql
REM ECHO BACKUP LOG %Database_Name% >>%dbbak_dir%backup_%Date_Today%.sql
REM ECHO TO DISK = '%dbbak_dir%%Database_Name%_%Date_Today%_log.bak' >>%dbbak_dir%backup_%Date_Today%.sql


REM osql.exe path
SET OSQL_PATH=C:\Program Files\Microsoft SQL Server\90\Tools\Binn\

REM Database user name and password
SET DBUser=**
SET DBpassword=***
ECHO BACKUP DATABASE
"%OSQL_PATH%osql.exe" -U %DBUser% -P %DBpassword% -i %dbbak_dir%backup_%Date_Today%.sql -o %dbbak_dir%%Database_Name%_%Date_Today%.log

ECHO database bakup complete!


REM compress file
ECHO rar start!>>%dbbak_dir%%Database_Name%_%Date_Today%.log
rar a -ad -m1 %dbbak_dir%%Database_Name%_%Date_Today%.rar %dbbak_dir%%Database_Name%_%Date_Today%.bak
rar a -ad -m1 %dbbak_dir%%Database_Name%_%Date_Today%.rar %dbbak_dir%backup_%Date_Today%.sql
rar a -ad -m1 %dbbak_dir%%Database_Name%_%Date_Today%.rar %dbbak_dir%%Database_Name%_%Date_Today%.log
ECHO rar a -ad -m1 %dbbak_dir%%Database_Name%_%Date_Today%.rar %dbbak_dir%%Database_Name%_%Date_Today%.bak>>%dbbak_dir%%Database_Name%_%Date_Today%.log
ECHO rar a -ad -m1 %dbbak_dir%%Database_Name%_%Date_Today%.rar %dbbak_dir%backup_%Date_Today%.sql>>%dbbak_dir%%Database_Name%_%Date_Today%.log
ECHO rar a -ad -m1 %dbbak_dir%%Database_Name%_%Date_Today%.rar %dbbak_dir%%Database_Name%_%Date_Today%.log>>%dbbak_dir%%Database_Name%_%Date_Today%.log
ECHO rar complete!

REM move file to target directory
ECHO copy start!>>%dbbak_dir%%Database_Name%_%Date_Today%.log
copy %dbbak_dir%%Database_Name%_%Date_Today%.rar %target_dir%
ECHO copy %dbbak_dir%%Database_Name%_%Date_Today%.rar %target_dir%>>%dbbak_dir%%Database_Name%_%Date_Today%.log
ECHO copy complete!

REM delete file
ECHO del start!>>%dbbak_dir%%Database_Name%_%Date_Today%.log
DEL /Q %dbbak_dir%%Database_Name%_%Date_Today%.bak
DEL /Q %dbbak_dir%backup_%Date_Today%.sql
REM /Q %dbbak_dir%%Database_Name%_%Date_Today%.log
ECHO DEL /Q %dbbak_dir%%Database_Name%_%Date_Today%.bak>>%dbbak_dir%%Database_Name%_%Date_Today%.log
ECHO DEL /Q %dbbak_dir%backup_%Date_Today%.sql>>%dbbak_dir%%Database_Name%_%Date_Today%.log


REM delete file which is one day ago
FORFILES /P %dbbak_dir2% /D -2 -M %Database_Name%*.rar /C "cmd /c del @file"
FORFILES /P %target_dir2% /D -1 -M %Database_Name%*.rar /C "cmd /c del @file"
ECHO FORFILES /P %dbbak_dir2% /D -2 -M %Database_Name%*.rar /C "cmd /c del @file">>%dbbak_dir%%Database_Name%_%Date_Today%.log
ECHO FORFILES /P %target_dir2% /D -1 -M %Database_Name%*.rar /C "cmd /c del @file">>%dbbak_dir%%Database_Name%_%Date_Today%.log


ECHO del complete!
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值