偷偷摘套内射激情视频,久久精品99国产国产精,中文字幕无线乱码人妻,中文在线中文a,性爽19p

SQL Server 2005缺失索引的找回方案

數(shù)據(jù)庫(kù) SQL Server
我們今天是要和大家一起討論的是SQL Server 2005缺失索引的找回方案,以及對(duì)其在實(shí)際操作中需要建立的相關(guān)索引的描述。

以下的文章主要描述的是SQL Server 2005缺失索引的找回方案,在SQL Server 2005 數(shù)據(jù)庫(kù)中有幾個(gè)新的特性,其可以幫我們找回丟失一些索引,這是一些非常好的特性,但基于您的工作項(xiàng),我們?nèi)绾沃佬枰⒛男┧饕?

 

在SQL Server 2000 ,我們不得不使用SQL事件探查器跟蹤文件和索引優(yōu)化向?qū)А?/p>

 

在SQL Server 2005 中有幾個(gè)新特性,可以幫助我們找回丟失的索引,這是一些非常好的特性,但基于您的工作項(xiàng),我們?nèi)绾沃佬枰⒛男┧饕?

 

在SQL Server 2000 ,我們不得不使用SQL事件探查器跟蹤文件和索引優(yōu)化向?qū)?。但在SQL Server 2005中我們可以采用動(dòng)態(tài)管理視圖(DMVs) ,就能很容易知道我們需要建立哪些索引,以利于我們的應(yīng)用程序。

 

以下是SQL Server 2005缺失索引相關(guān)的動(dòng)態(tài)管理視圖(DMVs)和函數(shù)列表:

 

動(dòng)態(tài)管理視圖和函數(shù)

 

說明

sys.dm_db_missing_index_group_stats 返回缺失索引組的摘要信息。如實(shí)現(xiàn)此缺失索引組后,系統(tǒng)查詢可能獲得的平均百分比收益;實(shí)現(xiàn)此缺失索引組后,用戶查詢可能獲得的平均百分比收益。

 

sys.dm_db_missing_index_groups 返回有關(guān)特定SQL Server 2005缺失索引組中包含的缺失索引的信息,如返回標(biāo)識(shí)SQL Server 2005缺失索引組。

 

sys.dm_db_missing_index_details 返回有關(guān)缺失索引的詳細(xì)信息,如返回標(biāo)識(shí)索引缺失的表;索引缺失的表的名稱;返回用于查詢的涵蓋列的逗號(hào)分隔列表。

 

sys.dm_db_missing_index_columns 返回有關(guān)缺失索引的數(shù)據(jù)庫(kù)表列的信息。這是動(dòng)態(tài)管理函數(shù)。

 

以下我們以AdventureWorks 數(shù)據(jù)庫(kù)中[Person.Address] 表為例,看看如何使用上述這些動(dòng)態(tài)管理函數(shù),找回缺失的索引。

通過運(yùn)行以下腳本,讓我們來看看AdventureWorks 數(shù)據(jù)庫(kù)中[Person.Address] 表有哪些索引?

 

use AdventureWorks;

exec sp_helpindex [Person.Address]

 

執(zhí)行后的結(jié)果,如圖1所示:

執(zhí)行sp_helpindex后的結(jié)果

在[Person.Address]表中,我們看不到 ModifiedDate列的索引。因此我們需要執(zhí)行“sys.dm_db_missing_index_details”以查看詳細(xì)信息,在執(zhí)行這個(gè)視圖之前,我們需要先執(zhí)行以下的SQL語(yǔ)句:

 

查詢1:

 

 

  1. select * from Person.Address where ModifiedDate = '01/01/2008' 

 

上面這個(gè)語(yǔ)句執(zhí)行后,您可能不會(huì)看到任何結(jié)果,但SQL Server的內(nèi)部將記錄下,用戶曾經(jīng)執(zhí)行了一個(gè)查詢操作和一個(gè)針對(duì)“ModifiedDate”列的索引,將在后續(xù)操作中將會(huì)用到。

 

查詢2:

 

 

  1. select * from sys.dm_db_missing_index_details: 

 

執(zhí)行后的結(jié)果如圖2所示:

 

執(zhí)行sys.dm_db_missing_index_details后的結(jié)果

在上圖中,我們可以看到“equality_columns”這個(gè)字段,上圖表明 [Modified Date] 著一列的索引已經(jīng)遺失。

 

查詢 3:

  1. select db_name(d.database_id) dbname, object_name(d.object_id) tablename, d.index_handle,   
  2. d.equality_columns, d.inequality_columns, d.included_columns, d.statement as fully_qualified_object, gs.*   
  3. from sys.dm_db_missing_index_groups g   
  4. join sys.dm_db_missing_index_group_stats gs on ggs.group_handle = g.index_group_handle   
  5. join sys.dm_db_missing_index_details d on g.index_handle = d.index_handle   
  6. where dd.database_id = d.database_id and dd.object_id = d.object_id   
  7. and object_name(d.object_id) = 'Address'  

先執(zhí)行查詢1若干次,然后執(zhí)行查詢 3

 執(zhí)行查詢3后的結(jié)果

在中請(qǐng)大家注意“user_seeks”字段,每一次查詢,該字段都將發(fā)生變化,因?yàn)?SQL Server的不斷更新遺失索引的動(dòng)態(tài)管理視圖(DMVs) 。這非常重要,基于這些信息,我們可以創(chuàng)建索引,以支持這些查詢。

 

針對(duì)遺失索引的動(dòng)態(tài)管理視圖是SQL2005中的一個(gè)重要新功能,可以幫助我們創(chuàng)建遺失的索引。

以上的相關(guān)內(nèi)容就是對(duì)SQL Server 2005缺失索引的找回的介紹,望你能有所收獲。

【編輯推薦】

  1. SQL Server 2008稀疏列與列集的經(jīng)驗(yàn)總結(jié)
  2. SQL Server 2008 FileStream支持“真功夫版”
  3. SQL Server 2005兩種快照隔離機(jī)制的不同之處
  4. SQL Server排序遇到NULL,不怕不帕!
  5. SQL Server獲取表的容量很簡(jiǎn)單!

 

責(zé)任編輯:佚名 來源: TechTarget中國(guó)
相關(guān)推薦

2010-07-26 10:04:43

SQL Server

2010-06-17 15:24:51

SQL SERVER

2010-07-13 17:25:55

SQL Server

2010-07-09 15:04:25

SQL Server

2010-07-19 10:15:33

SQL Server2

2010-06-17 15:09:49

SQL Server

2011-02-28 17:41:20

SQL Server

2010-07-23 12:55:29

SQL Server

2010-07-09 11:06:13

SQL Server

2010-10-21 15:13:20

SQL Server系

2010-06-30 08:34:27

SQL Server

2011-03-29 15:27:26

SQL Server 動(dòng)態(tài)管理

2011-09-01 16:13:37

Visual StudSQL Server 存儲(chǔ)過程

2011-04-18 13:02:08

SQL Server SQL Server

2010-09-03 10:40:30

SQL刪除

2011-03-28 12:50:45

SQL Server CE基礎(chǔ)

2009-07-20 16:40:55

JDBC訪問SQL S

2010-07-07 10:31:43

SQL Server數(shù)

2010-07-07 17:11:46

SQL Server

2010-07-13 10:11:48

SQL Server
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)