时间:2021-07-01 10:21:17 帮助过:54人阅读
我们都知道,提高sql server的数据查询速度,最有效的方法,就是为表创建索引,而我们对数据表进行新增,删除,修改的时候,会产生索引碎片,索引碎片多了,对性能产生很大的影响,索引碎片越多对数据库查询的性能影响就越大,这时我们就需要对索引重新组织
我们都知道,香港服务器,提高sql server的数据查询速度,最有效的方法,就是为表创建索引,网站空间,香港空间,而我们对数据表进行新增,删除,修改的时候,会产生索引碎片,索引碎片多了,对性能产生很大的影响,索引碎片越多对数据库查询的性能影响就越大,这时我们就需要对索引重新组织或重新生成,以达到索引的最大效率。
在sqlserver中索引碎片的大小是以百分比来体现的,如果索引碎片的百分比大于30%以上,就会对影响查询的性能。这时候我们就需要对该索引进行重新组织或重新生成了,重新组织或重新生成之后,索引碎片就会被删除。
那我们怎么才能知道每张表索引碎片的大小呢?方法有两种:
第一种:
第二种:利用 sys.dm_db_index_physical_stats 动态函数来查看索引的碎片比率
sys.dm_db_index_physical_stats的定义:
sys.dm_db_index_physical_stats ( {database_id | NULL } , { object_id | NULL } , { index_id | NULL | 0 } , { partition_number | NULL } , { mode | NULL | DEFAULT } )