1.索引方法论
索引方法论包含3个步骤:监控分析和实施。这三步是循环运行的,先监控后分析最后实施,然后在监控在分析在实施,知道没有明显的和潜在的索引问题为止。
2.监控
常见的监控工具有下面的3种:
1.性能监视器
2.动态管理对象
3.SQL Trace
IF DB_ID(N'IndexDemo') IS NOT NULL DROP DATABASE IndexDemo CREATE DATABASE IndexDemo go --创建一个表,用于存放对应计数器的值: USE IndexDemo GO IF OBJECT_ID(N'IndexingCounters', 'U') IS NOT NULL DROP TABLE IndexingCounters CREATE TABLE IndexingCounters ( counter_id INT IDENTITY(1, 1) , create_date DATETIME , server_name VARCHAR(128) NOT NULL , object_name VARCHAR(128) NOT NULL , counter_name VARCHAR(128) NOT NULL , instance_name VARCHAR(128) NULL , Calculated_Counter_value FLOAT NULL , CONSTRAINT PK_IndexingCounters PRIMARY KEY CLUSTERED ( counter_id ) ) GO CREATE NONCLUSTERED INDEX IX_IndexingCounters_CounterName ON dbo.IndexingCounters (counter_name) INCLUDE (create_date,server_name,object_name,Calculated_Counter_value)
对于性能计数器,可以很频繁的查询,但是如果是监控索引相关的情况,则没必要太过密集,可以每5分钟执行 一次