DOS批处理实现SQLServer2000数据库自动备份

来源:互联网 发布:windows平板不好用 编辑:程序博客网 时间:2024/05/16 01:47

标题:SQLServer2000数据库自动备份

Tag: DOS 批处理 bat sql2000 数据库备份

 

概要:

       利用windows的计划任务执行批处理文件

 

正文:

 

1 制作批处理文件

将下面的源代码保存为(文件名.bat),标注为蓝色的需要根据个人环境来改变

  1. ::文件名:SQLServer2000数据库自动备份.bat
  2. ::作者:Feng   创建日期:2008-11-27
  3. ::功能:将数据库备份导出到以当前日期和时间命名的文件中,并保存到该月的文件夹下。
  4. ::注意:脚本在windows 2003中文版操作系统下测试可用,其他环境下请先测试是否可用。
  5. ::测试:在运行前,请先在DOS命令行中键入echo %date%%time%,查看日期格式,如果是“yyyy-mm-dd 星期N 时:分:秒.厘秒”,例如“2008-11-26 星期三08:30:43.90”,则可用
  6. ::--------------------------设置变量
  7. ::服务器名
  8. @set ServerName=.
  9. ::登陆用户名
  10. @set LoginUser=sa
  11. ::登陆密码
  12. @set LoginPwd=sa
  13. ::数据库名
  14. @set DataBaseName=backupBasedata
  15. ::ISQL的路径,这个需要配置到系统环境变量中去(我的电脑属性-高级-环境变量-系统环境变量-path值后面添加sql工具的路径,如C:/Program Files/Microsoft SQL Server/80/Tools/BINN)
  16. ::@set ISQLPath=C:/Program Files/Microsoft SQL Server/80/Tools/Binn
  17. ::设置保存的绝对路径
  18. @set SavePath=G:/11
  19. ::根据当前的日期时间,生成备份的文件名。格式可以自己改
  20. @set FileName=bak-[%date:~0,10%-%time:~0,2%-%time:~3,2%-%time:~6,2%.%time:~9,2%]-bak.bak
  21. ::生成当月的文件夹名
  22. @set DirName=%date:~0,7%
  23. ::备份数据库语句
  24. @set ExecSQL="backup database %DataBaseName% to disk='%SavePath%/%DirName%/%FileName%'"
  25. ::-------------------------创建文件夹
  26. ::每月1号创建新的文件夹
  27. @if %date:~8,2%==01 (md %SavePath%/%DirName%)
  28. ::如果没有本月文件夹(初次运行时如果不是1号),则创建本月文件夹
  29. @if not exist %SavePath%/%DirName% (md %SavePath%/%DirName%)
  30. ::-------------------------备份数据
  31. ::开始执行导出
  32. @echo 开始备份数据
  33. isql -U %LoginUser% -P %LoginPwd% -S %ServerName% -d %DataBaseName% -Q %ExecSQL%
  34. ::-------------------------完成备份
  35. @echo 数据备份成功
  36. ::如果需要让客户确认,请去掉下面代码前面的::注释符。
  37. ::@pause

 

2  添加windows计划任务

控制面板--任务计划--添加任务计划

定期执行这个批处理文件

 

或者手动双击执行该批处理文件,来实现数据库的备份