首页 > 大数据 > 正文

你的数据库准备好过冬了吗

2013-11-28 14:53:24  来源:CSDN

摘要:文章来自Brent Ozar网站,作者在美国密歇根州长大,他清晰的记得在秋季来临之际人们是如何保养船只的:将船拖上岸晒干,全面清洁、维护,最后给船盖上防水的密封掩蔽物。
关键词: 数据库

    文章来自Brent Ozar网站,作者在美国密歇根州长大,他清晰的记得在秋季来临之际人们是如何保养船只的:将船拖上岸晒干,全面清洁、维护,最后给船盖上防水的密封掩蔽物。同样,数据库也需要保养过冬。这样才能延长它的寿命,最大限度的发挥它的效用。

\

    下面一起来看看如何让数据库安全过冬:


    1. 利用100%的fill factor重建所有的索引。重建索引需要用到fill factor参数,如果fill factor设置为100%,这意味着每一个索引页都是完全满的,如果fill factor设置为50%意味着每个索引页都是半满的。对于fill factor为100%的,每次新插入或更新一个记录,由于当前页没有空间可用,就可能有分页情况产生。过多的分页会降低SQL服务器的性能。有时我们设置较低的fill factor来防止分页问题的出现,尤其是在较为繁重的并发性期间。但是当一个数据库进入冬眠状态下的时候,对此,我们根本不需要过多的担心。通过将fill factor设置为100%和重建索引这两个步骤,这就像是把即将过冬的船紧紧地包装起来一样。同时这也意味着使数据更加密集化——空闲空间越少,从磁盘上读取的速度越快。


    2. 利用fullscan来更新统计数据。即使是不像上面所说的那样去重建索引,仍有可能需要更新我们的统计数据。这里建议使用fullscan是因为我们已经从这些数据里获得了更好的理解,这样我们就不需要在这个冰冷的数据库上再次更新统计数据。


    3. 创建一个只读数据库,使用一个Active Directory组登录。通过这一途径,如果你还需要添加其他拥有只读权限的用户到这个数据库的话,你只要简单地将他们添加到Active Directory组就可以了。其实,完成这一任务并不需要在数据库里做些什么,重要的是下一步骤该怎么做。


    4. 将数据库设置为只读。首先,要有足够的信心来保证在自己支配/使用下的数据不会发生任何改变,这同样能够让我们在避免被锁定的前提下适当的提升性能。另外,如果一个低效的索引重建脚本正在试图重建索引的话,即使是在数据没有发生变化的情况下,只读数据库的使用也能节省很多时间。


    5. 做一个完整的DBCC CHECKDB。做这个完整的DBCC CHECKDB只是想表明:制作者已经获得了一个好的、干净的所有数据库页面的副本。


    6. 测试完整的备份材料。将这些完整的备份在某些地方进行还原,还原之后就说明,有一个很好的备份可以被真正还原的。一旦在这方面有把握了,甚至可以考虑不再备份这个数据库——尤其是如果它已经超过了一万亿字节,就可以将它备份在多个地方可供使用。


    在数据库的使用寿命上,为数据库“过冬”可以说是大大的减少了对数据库的担心。其实这么做当然是有好处的,而且也有了备份资料,这样的话就可以花更多的时间来处理/关注那些更不稳定的数据库


第三十八届CIO班招生
国际CIO认证培训
首席数据官(CDO)认证培训
责编:fanwei

免责声明:本网站(http://www.ciotimes.com/)内容主要来自原创、合作媒体供稿和第三方投稿,凡在本网站出现的信息,均仅供参考。本网站将尽力确保所提供信息的准确性及可靠性,但不保证有关资料的准确性及可靠性,读者在使用前请进一步核实,并对任何自主决定的行为负责。本网站对有关资料所引致的错误、不确或遗漏,概不负任何法律责任。
本网站刊载的所有内容(包括但不仅限文字、图片、LOGO、音频、视频、软件、程序等)版权归原作者所有。任何单位或个人认为本网站中的内容可能涉嫌侵犯其知识产权或存在不实内容时,请及时通知本站,予以删除。