确保你运行的备份类型与你的数据库设置的恢复模型相符合。我见过许多案例设置为完全恢复,但是只有全备份被提到。在这些实例中,事务日志远远比数据库文件更大,但仍然得到了每个备份的支持。
利用大块日志恢复模型
如果你将给数据库中做大量插入,而且要求如果必要的话可以重建数据,那就通过使用大容量日志恢复模型保存事务日志备份时间。这个选项不对每个大块加载操作都记日志,这样可以使你的事务日志内容更少,事务日志备份运行更快。
采用差异备份
如果你的数据库非常大,但是可能整个一周数据库都不会有太多变化,那么利用差异性备份可以降低你运行备份的时间。利用这种方法,你可以在一周里每天运行差异备份,然后在周末运行全备份。
采用事务备份
另一种方法是每天只运行事务日志备份,然后每周运行全备份。这也可以降低你的备份需要的时间和资源。
文件和文件组备份
文件和文件组备份允许你一次备份数据库的一部分,而不是整个数据库。如果你有五个文件组,你可以每晚备份不同的文件组,然后在周末做一次完整备份。要恢复文件组,你还需要运行事务日志备份。
快照备份
更加快速的方法是快照备份,它允许你对数据库做一个快速的快照,把文件保存在其他地方作为备份。这种方案通常用在高端硬件解决方案中。
第三方工具
利用第三方备份工具提供压缩,像Idera公司,Quest软件公司和Red Gate软件公司都提供类似工具;或者提供持续备份功能的工具,像TimeSpring软件公司的数据保护软件。还有的集群产品支持你把整个数据库镜像到另一套系统中,而无需任何备份,这样就增加了你保持系统运行的能力。但是,它不提供长期数据归档。
事务日志大小
经常检查你的事务日志大小。你可以利用DBCC SQLPERF(LOGSPACE)查看到底还有多少可用空间。也可以用DBCC SHRINKFILE降低事务日志的大小。
在下班时间和低利用率时间做备份
要把你的全备份和差异备份安排在系统使用率低的时间段。SQL Server可以提供给备份的资源越多,它完成备份就越快。
不要同时运行所有备份
如果你在一台服务器上有多个数据库,或者有多个服务器使用相同的磁盘子系统,定时备份要设置为不同的时间。如果你处在一个有许多备份任务的大型环境中,利用sqlSentry或者Idera公司的工具会帮助你更好地管理你的备份任务。
总结
要提高你备份数据库的性能,你有一些简单的措施可选择,其中一些需要你购买第三方工具或者重新配置你当前拥有的硬件。在任何情况下,如果你有备份性能方面的问题,请试着用这里列出的建议缓解你的瓶颈。