MSSQL自动备份数据库并压缩的批处理脚本

2019-01-0211:05:30 发表评论 442

这是自己用过的相当好用的MSSQL自动备份数据库并压缩的批处理脚本,请注意以下几点

  1. 首先保证服务器有rar解压软件安装在C盘的默认目录,因为脚本是调用压缩软件,当然可以自行调整脚本里的各个目录
  2. 备份目录尽量用数字或英文,本脚本默认在服务器的D:\bak\ 目录
  3. 备份文件名是以系统日期和时间命名的,自己可以把备份目录做个FTP 拖到本机
  4. 脚本是 中文的地方,请根据自己的数据库名密码自行修改

 

 


@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

 

 

发表评论

您必须登录才能发表评论!