这是自己用过的相当好用的MSSQL自动备份数据库并压缩的批处理脚本,请注意以下几点
- 首先保证服务器有rar解压软件安装在C盘的默认目录,因为脚本是调用压缩软件,当然可以自行调整脚本里的各个目录
- 备份目录尽量用数字或英文,本脚本默认在服务器的D:\bak\ 目录
- 备份文件名是以系统日期和时间命名的,自己可以把备份目录做个FTP 拖到本机
- 脚本是 中文的地方,请根据自己的数据库名密码自行修改
@ECHO ON
set d=%date:~0,10%
set d=%d:-=%
set t=%time:~0,8%
set t=%t::=%
set stamp=%p%%d%%t%
set bakupfolder=D:\bak\
rem 1按子目录保存备份文件;0不按
set lay_in_subfolder=1
call :backupone 数据库名
goto :EOF
@ECHO OFF
:backupone
setlocal
echo %1
set dbname=%1
if not exist %bakupfolder%%dbname% mkdir %bakupfolder%%dbname%
if %lay_in_subfolder%==1 (
set subfolder=%dbname%\
)else set subfolder=
rem echo %bakupfolder%%subfolder%%dbname%%stamp%.bak
sqlcmd -U 数据库名 -P "你的密码" -S localhost -Q "backup database %dbname% to disk='%bakupfolder%%subfolder%%dbname%%stamp%.bak'"
"C:\Program Files\WinRAR\RAR.exe" a -ep1 -r -o+ -m5 -s -df "%bakupfolder%%subfolder%%dbname%%stamp%".rar "%bakupfolder%%subfolder%%dbname%%stamp%.bak"
endlocal&goto :EOF