朋友们,我们在使用数据库时,可能精力都放在了数据库本身的各种业务处理,往往忽视了对数据库的定期备份。有些朋友想起来就随手备份一下,忘记了也就忘记了,等到需要历史备份的时候,我们才发现手头什么也没有。
数据库定期备份非常重要!
有计划的备份数据库可以采用很多种方式,比如您可以自己开发个小程序,通过定期调用备份脚本实现。比如SQLServer备份数据库的最简单脚本是:
backup database 数据库名称 to disk='备份路径和名称'
如果我们开发个小程序,定期调用这类脚本备份,当然是可以的。
其实我们没必要这样做。主流数据库都支持设置备份计划,您不用总是通过手工去备份,一旦设置了备份计划,系统就会按照预先设置在预定时间自动备份数据库,我们再也不用为备份数据库犯愁了。
实战设置SQLServer维护计划
下面我就以SQLServer2017在SSMS17.9中设置为例,详细讲述下如何通过SSMS管理器制定数据库备份计划。
如下图:打开SSMS,定位到【维护计划】节点,鼠标单击右键,在弹出菜单中单击【维护计划向导】。
使用向导要比直接创建更直观,如果您以后熟悉了,可以直接创建,再做各项设置。而向导则会引导我们一步步详细设置维护计划。
首先弹出的是维护向导的提示窗口,直接单击【下一步】。
下一个窗口非常重要,其中一些核心设置就在这里,如果您一不留神就溜过去了。首先要录入计划的名称,比如您可以录入【数据备份计划】。设置好名称,单击右下角的【更改】按钮。
下图就是可以更改的内容,维护计划中与时间周期有关的设置,基本都在这里面,您可要看仔细喽。计划类型这里,如果是周期自动备份,当然使用默认的【重复执行】选项。再往下的频率,主要分为每天、每周、每月三种方式,正常情况,我们最好是每天都备份一次。
选择了每天以后,又出现一个每天频率,可以细分到每个小时,这个就没必要了,每天执行一次就行了,执行的时间点,最好是用的人最少的时候,比如晚上11点、凌晨2点,根据您的需要设置就行了。
参考下图:
设置好计划的时间周期,继续下一步,开始设置【维护任务】。这里有几条可以勾上,比如收缩数据库、重新组织索引这两个,这两个类似于帮您清理数据库,数据库会变小、速度会变快。后面有三个备份数据库(完整)、备份数据库(差异)、备份数据库(事务日志)。我一般勾上完整这个,如果您不放心,可以把三个都勾上。
单击【下一步】,窗口可以设置任务的操作顺序,一般默认即可,如下图。个人建议最好的顺序是:重新组织索引、收缩数据库、备份数据库。重新组织索引之后再收缩数据库,收缩的效率更高,数据库更小,备份的文件也越小。
再【下一步】,选择要收缩的数据库,这个简单。
再【下一步】,选择要重新组织索引的数据库,这个也很简单。其实我这里的顺序就有点不妥,应该把重新组织索引放在收缩数据库之前。您具体使用时注意就行了。
再【下一步】,选择要备份的数据库,也是非常简单了。问题往往出在您认为很简单的地方。您如果仔细看一下,这里有三个换页框,第一个换页框是选择备份数据库的,后面还有两个换页框,而这两个才是重点呢。
切换到目标面板,这里需要设置一下备份的路径,最好不要使用默认路径,这样更容易管理。
再切换到选项面板,这里有一个【备份集过期时间】很重要,为什么重要呢?如果这里不设置的话,备份文件会越来越多,从第一次到最后一次,每个备份文件都存在,如果我们不注意,我们的硬盘很快就酱爆了,到时候任务就执行不下去了。这里可以设置一下,比如您可以保留最近一个月、一周、10天的,您最好根据单个备份文件大小和可用磁盘空间大概算一下,免得硬盘爆仓了。
设置好之后,出现选择报告选项窗口,如果您想要看报告就设置一下、还可以自动发送电子邮件呢,我一般对这个没太多兴趣,就直接勾掉了。
单击【下一步】,弹出一个总结窗口,就是您前面设置的一个汇总了,您需要认真核对一下,如果漏了什么或者设置错了,退回去再重新设置一下。
确认无误后,单击【完成】按钮,开始生成维护计划,如下图所示:
计划生成之后,在左侧的【维护计划】节点下面,就会多出一个子节点,就是您设置的维护计划啦,双击打开,计划的核心内容和流程就通过一张流程图展示了出来。
怎么样,是不是看上去挺复杂的?虽然设置一次复杂一些,但您设置一次,就解决了自己以后的隐患,还是很值得的啦。
还有个地方要注意,就是SQLServer代理这里要启动起来,这个如果不启动,计划就变成僵尸计划了。
希望对您有所帮助!