SQL数据库索引维护指导_SQL SERVER数据库_黑客防线网安服务器维护基地--Powered by WWW.RONGSEN.COM.CN

SQL数据库索引维护指导

作者:黑客防线网安SQL维护基地 来源:黑客防线网安SQL维护基地 浏览次数:0

本篇关键词:指导维护索引数据库
黑客防线网安网讯:  索引在数据库相关工作者的日常工作中占据了很重要的位置,索引需要牵涉到索引创建、优化和维护多方面的工作,本文以实例结合相关原理来介绍索引维护相关的知识。文中的相关代码,也可以...

  索引在数据库相关工作者的日常工作中占据了很重要的位置索引需要牵涉到索引创建、优化和维护多方面的工作本文以实例结合相关原理来介绍索引维护相关的知识文中的相关代码,也可以满足多数情况下索引的维护需求

  实现步骤

  1. 以什么标准判断索引是否需要维护?

  2. 索引维护的方法有哪些?

  3. 能否方便地整理出比较通用的维护过程,实现自动化维护?

  一、 以什么标准判断索引是否需要维护?

  由于本文集中讨论索引维护相关,所以我们暂且抛开创建的不合理的那些索引,仅从维护的角度来讨论。从索引维护的角度来讲,最主要的参考标准就是索引碎片的大小。通常情况下,索引碎片在10%以内,是可以接受的。下面介绍获取索引碎片的方法:

  SQL Server 2000: DBCC SHOWCONTIG

  SQL Server 2005: sys.dm_db_index_physical_stats

  实例(取db_test数据库所有索引碎片相关信息):

  SQL Server 2000:

USE [db_test];
GO
DBCC SHOWCONTIG WITH TABLERESULTS, ALL_INDEXES
GO
  SQL Server 2005:
DECLARE @db_name VARCHAR(256)
SET @db_name='db_test' 
SELECT
 db_name(a.database_id) [db_name],
 c.name [table_name],
 b.name [index_name],
 a.avg_fragmentation_in_percent
FROM
 sys.dm_db_index_physical_stats (DB_ID(@db_name), NULL,NULL, NULL, 'Limited') AS a
JOIN
 sys.indexes AS b ON a.object_id = b.object_id AND a.index_id = b.index_id
JOIN
 sys.tables AS c ON a.object_id = c.object_id
WHERE
 a.index_id>0
 AND a.avg_fragmentation_in_percent>5 -–碎片程度大于5

  二、 索引维护的方法有哪些?

    黑客防线网安服务器维护方案本篇连接:http://www.rongsen.com.cn/show-9423-1.html
网站维护教程更新时间:2012-03-21 02:20:47  【打印此页】  【关闭
我要申请本站N点 | 黑客防线官网 |  
专业服务器维护及网站维护手工安全搭建环境,网站安全加固服务。黑客防线网安服务器维护基地招商进行中!QQ:29769479

footer  footer  footer  footer