SQLServer2005的按期备份是经过建立“维护计划”来实现的。主要有两种方式:一、维护计划向导。二、新建维护计划(用户手工建立) sql
若是想在SQLServer2005中使用维护计划来设计维护备份数据库任务时,有一个前提条件:“SQL Server 代理”服务必须是启用状态 数据库
首先介绍使用维护计划向导来执行数据库的按期备份 服务器
操做过程: sqlserver
一、 单击:开始→程序→Microsoft SQL Server 2005→“SQL Server Management Studio”(图1) spa
图1 .net
二、 右键单击:SQL Server 代理→启动(注: 要执行维护计划,SQL Server 代理必须启动!) 命令行
三、 右键单击:管理→维护计划→维护计划向导,单击“下一步”(图2) 设计
图2 代理
四、 在“选择目标服务器”窗口,依次设置“名称”、“服务器”、“身份验证”等信息,单击“下一步”(图3), server
图3
说明:身份验证:安装sqlserver2005时采用的验证方式
五、 在“选择维护任务”窗口,选择准备执行的任务,单击“下一步”(图4)
图4
说明:
1) 在维护任务列表中勾选须要执行的任务,可多选
2) 下方黄色区域针对选择的每项任务加以说明
六、 在“选择维护任务顺序”窗口,能够调整每项任务的执行顺序,单击“下一步”(图5)
图5
说明:
1) 调整多个任务的前后执行顺序可经过上移和下移来实现
七、 在“定义备份数据库(完整)任务”窗口,勾选须要备份的数据库名称,单击下一步(图6)
图6
图7
说明:
1) 选择将备份文件备份到磁盘上
2) 指定备份文件存放的文件夹和位置
3) 勾选“验证备份完整性”
八、 在“选择计划属性”窗口,单击“更改”按钮打开“新建做业计划窗口”,设置好各项参数后单击“肯定”按钮(图8)
图8
说明:
1) 设置好各项参数后,在摘要说明栏中叙述了本次做业的详细内容
九、 再次回到“选择计划属性”窗口,单击下一步(图9)
图9
十、 在“选择报告选项”窗口,设置报告的保存或分发方式,单击下一步(图10)
图10
十一、 显示本次维护计划的详细信息,单击完成(图11)
至此,SQL Server 2005采用维护计划便可以达到按期备份数据库的目的。
2、SQL Server 2005数据库备份按期清理
因为采用上述介绍的数据库维护计划,能够到达按期备份数据库的目的,可是产生了一个问题,数据库备份按期一直在生成,若是大的数据库一个备份文件达几 GB,长期备份的话,硬盘将满了,而且保存太长时间的备份也没有太大必要,所以如何按期清理这些备份是咱们接下来要介绍的。有不少种方法能够实现按期清理 备份,本文介绍一种实现方法——采用forfiles命令,这个命令在Windows Server 2003系统中存在,在XP中并不存在,所以须要下载安装。
1. 下载forfiles并安装。
下载forfiles,而且拷贝forfiles.exe至具有环境变量的目录下(好比:C:/WINDOWS/system32)。这样你就能够在命令 提示符中用forfiles命令了。 下载地址:http://download.csdn.net/source/1812302
2. forfiles命令简介
FORFILES [/P pathname] [/M searchmask] [/S]
[/C command] [/D [+ | -] {yyyy-MM-dd | dd}]
描述:
选择一个文件(或一组文件)并在那个文件上
执行一个命令。这有助于批处理做业。
参 数列表:
/P pathname 表示开始搜索的路径。默认文件夹是当前工做的
目录 (.)。
/M searchmask 根据搜索掩码搜索文件。默认搜索掩码是 '*'。
/S 指导 forfiles 递归到子目录。像 "DIR /S"。
/C command 表示为每一个文件执行的命令。命令字符串应该
用双引号括起来。
默认命令是 "cmd /c echo @file"。下列变量
能够用在命令字符串中:
@file - 返回文件名。
@fname - 返回不带扩展名的文件名。
@ext - 只返回文件的扩展。
@path - 返回文件的完整路径。
@relpath - 返回文件的相对路径。
@isdir - 若是文件类型是目录,返回 "TRUE";
若是是文件,返回 "FALSE"。
@fsize - 以字节为单位返回文件大小。
@fdate - 返回文件上一次修改的日期。
@ftime - 返回文件上一次修改的时间。
要在命令行包括特殊字符,字符请以 0xHH
形式使用十六进制代码(例如,0x09 为 tab)。
内部 CMD.exe 命令前面应以 "cmd /c" 开始。
/D date 选择文件,其上一次修改日期大于或等于 (+),
或者小于或等于 (-) 用 "yyyy-MM-dd" 格式指定的日
或选择文件,其上一次修改日期大于或等于 (+)
当前日期加 "dd" 天,或者小于或等于 (-) 当前
日期减 "dd" 天。有效的 "dd" 天数能够是
0 - 32768 范围内的任何数字。若是没有指定,
"+" 被看成默认符号。
/? 显示帮助消息。
例如:
FORFILES /?
FORFILES
FORFILES /P C:/WINDOWS /S /M DNS*.*
FORFILES /S /M *.txt /C "cmd /c type @file | more"
FORFILES /P C:/ /S /M *.bat
FORFILES /D -30 /M *.exe
/C "cmd /c echo @path 0x09 在 30 前就被更改。"
FORFILES /D 2001-01-01
/C "cmd /c echo @fname 在 2001年1月1日就是新的。"
FORFILES /D +2006-12-12 /C "cmd /c echo @fname 今天是新的。"
FORFILES /M *.exe /D +1
FORFILES /S /M *.doc /C "cmd /c echo @fsize"
FORFILES /M *.txt /C "cmd /c if @isdir==FALSE notepad.exe @file"
不熟悉的能够根据上面的例子,逐个联系,看看执行结果。
3. 删除备份的批处理脚本
FORFILES /P D:/sqldataup /M *.bak /C "cmd /C del /Q @path" /d –5
上述脚本的意思是:备份文件夹为D:/sqldataup,/d –5表示删除5天前的数据库备份,这个能够根据实际须要设定。
注意:若是路径有空格,则应用""将路径引发来。如:"C:/my documents/database backup",不然出错。
4. 经过计划任务调用批处理脚本以下图所示:(下图为在网上摘录)
至此,数据库按期备份和清理备份能够实现了。清理备份还有其余方法,此文并不介绍。