码迷,mamicode.com
首页 > 数据库 > 详细

SQL Server Database 维护计划创建完整的备份策略

时间:2014-10-26 21:17:36      阅读:200      评论:0      收藏:0      [点我收藏+]

标签:style   blog   http   color   io   sp   文件   数据   div   



SQL Server的维护计划Maintenance Plan是一个非常实用的维护工具,可以完成大多数的数据库维护任务,通过对这些功能的封装,可以省去很多的代码编写时间。网络上完整介绍的不是很多,特此补上一篇。

数据库的备份是日常操作非常重要的一个环节,备份的方法也很多,其中最简单的方法就是通过Management Studio的图形界面,这种方法对于即时性的备份需求是最快的。

bubuko.com,布布扣

也可以通过SQL语句,直接通过语句相对来说对于自定义的自动化备份更灵活:

BACKUP DATABASE mydb to DISK=‘D:\Backup\mydb

 

但有时备份操作往往在具体的要求和自动化的要求上会更高一些,尤其是在数据仓库系统,比如对一个生产系统的备份通常是这样要求的:

- 每周六一个全量备份

- 工作日时间每天一个增量备份

- 所有的备份在一个月之后自动删除

如果你是一个很厉害的Coder,通过SQL编程,或者.net c# code,以及powershell等等方式来实现这个需求虽说不难,但也不简单。而实际上SQLServer早就为我们考虑好了这样的需求,那就是通过SQLServer自带的Maintenance Plan。

可以在SQL Server Management Studio的Management下找到Maintenance Plans。

bubuko.com,布布扣

首先右键这个文件夹新建一个维护计划。

bubuko.com,布布扣

给维护计划取个名字。

bubuko.com,布布扣

维护计划界面。对于上面我们提到的需求,在维护计划里对应的就是三个Subplan。系统会默认创建一个空的Subplan。

bubuko.com,布布扣

Subplan里都支持哪些功能呢?让我们点击View菜单下的Toolbox。

bubuko.com,布布扣

可以看到在维护计划下支持的任务类型(熟悉SSIS的朋友对这个或许再熟悉不过)。

bubuko.com,布布扣

将Back Up Database Task拖拽到右侧。

bubuko.com,布布扣

双击设计界面的Back Up Database Task,弹出备份设计界面,首先指定要备份哪一个数据库。这里支持多选,所以在维护整台服务器的时候很方便。这里我们只演示备份AdventureWorksDW2012数据库。

bubuko.com,布布扣

备份类型选择Full完整。然后依次指定备份路径等信息。

bubuko.com,布布扣

完整备份创建完毕后,再创建一个Subplan,来完成增量备份的设置。

bubuko.com,布布扣

点击Add Subplan后,给子计划取个名字。

bubuko.com,布布扣

数据库还是选择AdventureWorksDW2012,备份类型选择"差异"。其它设置跟以前相同,当然如果考虑将差异备份和完整备份分开的话,可以考虑重新设置备份路径。

bubuko.com,布布扣

完整备份和差异备份的设置完成了,接下来需要设置的是清空历史备份。这里再添加一个Subplan,将Maintenance Cleanup Task拖拽到设计界面中。

bubuko.com,布布扣

设置要清理的文件夹,指向刚才我们设置的备份路径,然后在底部设置多久的文件需要被清理掉,这里选择1 Month。

bubuko.com,布布扣

三个步骤设置完毕了,以此为全量备份,差异备份以及备份清理,问了维护方便,将这三个Subplan重新命名:

bubuko.com,布布扣

接下来设置每个步骤的运行周期。按照先前的需求定义,周六一个完整备份,平日一个差异备份,然后自动清理一个月前的备份。

首先点击第一个Subplan的Schedule按钮,按照如下设置全量备份的周期设置。

bubuko.com,布布扣

然后以此设置差异备份的周期。

bubuko.com,布布扣

最后文件清理的周期。

bubuko.com,布布扣

设置好之后,保存,维护计划就设置完毕了。

bubuko.com,布布扣

而实际上,SQL Server是根据刚才的操作,自动生成了相应的SSIS Package和Job,在SQL Server Agent的Jobs下可以看到生成的相应的三个Job。

bubuko.com,布布扣

点开每个Job,可以看到Job步骤下是在SSIS下生成的对应的Package。

bubuko.com,布布扣

 

至此,通过维护计划来实现复杂的备份任务介绍至此。也许这个备份介绍的还不是很全面,但基本足以满足大多数的需求场景,尤其是对数据仓库的备份,而且再复杂的备份任务基本也都可以通过维护计划来实现。

SQL Server Database 维护计划创建完整的备份策略

标签:style   blog   http   color   io   sp   文件   数据   div   

原文地址:http://blog.csdn.net/aspnetx/article/details/40480491

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!