安装大型SQL Server会带来额外的挑战,特别是如何备份所有那些数据库,并确保在出现故障时使丢失数据最小化。这里我会详细列举一些在为大型SQL Server环境设置备份计划时要考虑的要点。 网络带宽 问题观察:首先要看你有一台服务器还是500台服务器,备份文件要转移到磁带或者磁盘存储都将会对你的网络带宽有影响。一个最佳实践是把备份文件写到磁盘,然后归档到磁带。
在向磁盘写数据的时候,不要写到相同的物理驱动器或者阵列是一种明智的做法,因为服务器或者磁盘故障会同时损坏你的数据库和你的备份副本。对于大型SQL Server环境,你还可能会有一些集中类的磁带备份方法。这些场景都需要把备份文件……
我们一直都在努力坚持原创.......请不要一声不吭,就悄悄拿走。
我原创,你原创,我们的内容世界才会更加精彩!
【所有原创内容版权均属TechTarget,欢迎大家转发分享。但未经授权,严禁任何媒体(平面媒体、网络媒体、自媒体等)以及微信公众号复制、转载、摘编或以其他方式进行使用。】
微信公众号
TechTarget
官方微博
TechTarget中国
安装大型SQL Server会带来额外的挑战,特别是如何备份所有那些数据库,并确保在出现故障时使丢失数据最小化。这里我会详细列举一些在为大型SQL Server环境设置备份计划时要考虑的要点。
网络带宽
问题观察:首先要看你有一台服务器还是500台服务器,备份文件要转移到磁带或者磁盘存储都将会对你的网络带宽有影响。一个最佳实践是把备份文件写到磁盘,然后归档到磁带。在向磁盘写数据的时候,不要写到相同的物理驱动器或者阵列是一种明智的做法,因为服务器或者磁盘故障会同时损坏你的数据库和你的备份副本。对于大型SQL Server环境,你还可能会有一些集中类的磁带备份方法。这些场景都需要把备份文件跨网络做转移。
推荐方案:要处理好需要被写到磁盘和磁带的数据卷,你应该设置独立管理的网络(VLAN),隔离这类网络流量,这样它就不会影响其它应用程序用户。数据库文件可能要占用你整个磁盘需求的绝大部分,所以避免跨你的用户网络移动这些文件会保证你不会影响正常用户,而且可以提供满足你备份需求的最大文件吞吐量。
服务器监控
问题观察:面对大量服务器时要处理的另一个问题是如何监控它们,确保所有任务都在正常运行。除了确保备份任务运行稳定,你还需要监视可用磁盘空间情况。每天连接每台服务器检查所有进程是否运行无误是不现实的,也是不可能做到的,因此你应该实施一些工具或流程来使监控自动化进行。
推荐方案:最简单,最廉价的选择就是设置SQL Server警告和自动报告。你还可以利用第三方监视工具做监控,许多公司都提供这类工具,比如Idera公司,Quest软件公司,NetIQ公司和微软公司。其中一些工具是专门为SQL Server设计的,而另外一些是更通用的,功能覆盖你服务器的方方面面;还有一些提供出现问题时自动纠正的能力。
测试数据库恢复
问题观察:你必须测试数据库恢复,这样你就知道是否可以在真正出现故障时恢复系统。就像你付诸实施的任何措施一样,你在测试上花的时间越多,结果就会越好。测试每个数据库的所有恢复是不可能的,但是你应该对不同类型服务器的一个截面做测试,定期运行恢复测试,确保你的恢复计划是有效的。
推荐方案:对你的数据库进行分类,并相应地组织它们。然后对每种类型的不同数据库做定期的现场测试。尽管这种方法不能保证百分之百的数据库都能成功恢复,但它会让你对必须做恢复时需要做什么有一个比较放心的了解。
备份压缩
问题观察:利用SQL Server备份压缩软件对于大型数据库群和规模很大的安装环境来说很关键。这些工具支持你更快地完成备份,由于内建压缩机制而节约磁盘和磁带空间。
推荐方案:对一个或更多个支持文件压缩的SQL Server备份工具进行评估,许多公司都提供这类工具,包括Idera公司,Quest公司和Red Gate软件公司。这些工具支持你备份并同时压缩文件。备份时间可以被缩短一半,备份文件可以被降到原始备份文件的10%大小。这为大型SQL Server群的备份提供了很大帮助。
定时执行备份任务
问题观察:SQL Server Agent是一款出色的定时备份任务工具,但是它对于识别重叠和处理任务依赖方面没有任何优势。让你的所有备份同时运行和完成固然是件好事,但是那基本是不可能的,特别是在大型环境中。另外,管理这么多任务,做变更和监控本身也是一项任务。
推荐方案:为你的SQL Server Agent研究要实施的主(目标)服务器。这就使你可以有一个集中的位置用于任务管理,并把任务推到其它服务器。这可以帮助缓解任务管理的压力,但是它并没有提供查找重叠和任务依赖的灵活性。
另外,考虑一下sqlSentry和Idera公司的SQLschedule。这些工具为你的所有任务提供了图形化的视图,这样你就可以看到任务什么时候运行,以及运行了多长时间。它们还给你提供了处理任务依赖的功能。因此,如果任务A不得不在任务B启动之前完成,你可以利用这些工具中的一种来处理这个问题。此外,它们允许你一起查看所有服务器,而且你可以通过跨服务器查询类似任务缩小你的视图。你可以利用简单的日期时间界面(像微软的Outlook一样)修改计划任务,你可以完全控制它们。
流程一致性
问题观察:与任何其它大型项目一样,保证流程一致性很关键。在管理一大群服务器时,如果你定期推出新变更,故障检测,并在需要的时候恢复数据库,那是极其有帮助的。
推荐方案:利用脚本给新服务器部署任务,并对现存服务器全面统一地变更。备份文件的命名规则也很重要。备份名称应该包括一些类型识别符,比如服务器,数据库,日期或时间,备份类型(全备份,差异备份或者日志)。恢复模型和备份计划任务的类型也应该与你的服务器相似。你的数据库可能适合多种类型,但是你的分歧数量应该是有限的。这一点在恢复数据库时会变得很关键;如果你知道该数据库是哪一类的,你会很快知道可以恢复什么,可能丢失什么。同时,确保你在始终如一地监视服务器。这么多服务器要监视,你需要一种简单的方式来确保它们都在正常运行。
这里提到的只是在为大型SQL Server安装实施备份计划时要考虑的几件事情。尽管这些事情实质上考虑的级别较高,但它们应该为检查你现存的备份机制事项,或者制定新计划提供了一个好的起点。
翻译
相关推荐
-
说说数据库备份的那些事
数据备份对于DBA来说是一项最基本的工作,但又是十分关键的,每个SQL Server上面执行的最重要的任务之一都是运行备份和恢复。
-
Oracle Cloud推出数据库备份与存储云服务
甲骨文公司近日宣布推出Oracle数据库备份服务(Oracle Database Backup Service)和Oracle存储云服务(Oracle Storage Cloud Service)。
-
SQL Server DBA的六大日常职责
SQL Server有哪些关键任务需要DBA放到日常list中的呢?本文就将介绍六个SQL Server DBA的日常职责。
-
将SQL Server备份拆分成多个文件
DBA可以试着将SQL Server备份拆分成多个文件以减少备份时间,并使用多个驱动器来存储备份文件。