欢迎来到天天文库
浏览记录
ID:24425792
大小:50.00 KB
页数:3页
时间:2018-11-14
《sqlserver中的索引碎片处理--》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、SQLServer中的索引碎片处理>> SQLServer数据库随着使用时间的增长,会让人觉得越来越慢,这个和你平时没有合理的维护计划有关系,定期处理索引碎片是一个必不可少的工作内容之一。具体信息参考msdn zh-/library/ms189858.aspx我工作中碰到一张表,有320万记录,数据表占用空间800多兆,所有索引碎片大于80%,甚至有100%,索引占用空间500兆,重新生成索引后占用空间减小到200多兆。一个可以在SQL2005中测试的脚本 --dropdatabasedb_index_test
2、--建立测试环境createdatabasedb_index_testgousedb_index_testgocreatetabletbTest(rointidentity(1,1),idvarchar(100),datedatetime)gocreateindexindex_idontbTest(id)go --插入测试数据,并适当删除一部分数据declareiintseti=1syscolumnsdeletefromtbTest%2=0seti=i+1endgo --检查索引SELECTavg_fragmen
3、tation_in_percentFROMsys.dm_db_index_physical_stats(DB_ID(),OBJECT_ID(N'tbTest'), NULL,NULL,NULL)ASa JOINsys.indexesASbONa.object_id=b.object_idANDa.index_id=b.index_ide='index_id' go--重建索引alterindexindex_idontbTestrebuildgo --检查索引SELECTavg_
4、fragmentation_in_percentFROMsys.dm_db_index_physical_stats(DB_ID(),OBJECT_ID(N'tbTest'), NULL,NULL,NULL)ASa JOINsys.indexesASbONa.object_id=b.object_idANDa.index_id=b.index_ide='index_id'--删除测试环境gousemastergodropdatabasedb_index_testgo 在sql的客
5、户端工具SQLServerManagementStudio中也可以手动检查并重建索引>>>>这篇文章来自..,。
此文档下载收益归作者所有