国产精品一区二区精品_久久小视频_天堂va在线观看_99久久夜色精品国产亚洲96_日本手机在线视频_av成人免费

當前位置:首頁 > 網站舊欄目 > 學習園地 > 程序開發教程 > DBCC DBREINDEX重建索引提高SQL Server性能

DBCC DBREINDEX重建索引提高SQL Server性能
2010-01-17 10:58:41  作者:  來源:
大多數SQL Server表需要索引來提高數據的訪問速度,如果沒有索引,SQL Server 要進行表格掃描讀取表中的每一個記錄才能找到索要的數據。索引可以分為簇索引和非簇索引,簇索引通過重排表中的數據來提高數據的訪問速度,而非簇索引則通過維護表中的數據指針來提高數據的索引。

 

1. 索引的體系結構

為什么要不斷的維護表的索引?首先,簡單介紹一下索引的體系結構。SQL Server在硬盤中用8KB頁面在數據庫文件內存放數據。缺省情況下這些頁面及其包含的數據是無組織的。為了使混亂變為有序,就要生成索引。生成索引后,就有了索引頁和數據頁,數據頁保存用戶寫入的數據信息。索引頁存放用于檢索列的數據值清單(關鍵字)和索引表中該值所在紀錄的地址指針。索引分為簇索引和非簇索引,簇索引實質上是將表中的數據排序,就好像是字典的索引目錄。非簇索引不對數據排序,它只保存了數據的指針地址。向一個帶簇索引的表中插入數據,當數據頁達到100%時,由于頁面沒有空間插入新的的紀錄,這時就會發生分頁,SQL Server 將大約一半的數據從滿頁中移到空頁中,從而生成兩個半的滿頁。這樣就有大量的數據空間。簇索引是雙向鏈表,在每一頁的頭部保存了前一頁、后一頁地址以及分頁后數據移動的地址,由于新頁可能在數據庫文件中的任何地方,因此頁面的鏈接不一定指向磁盤的下一個物理頁,鏈接可能指向了另一個區域,這就形成了分塊,從而減慢了系統的速度。對于帶簇索引和非簇索引的表來說,非簇索引的關鍵字是指向簇索引的,而不是指向數據頁的本身。

 

為了克服數據分塊帶來的負面影響,需要重構表的索引,這是非常費時的,因此只能在需要時進行。可以通過DBCC SHOWCONTIG來確定是否需要重構表的索引。

 

2. DBCC SHOWCONTIG用法

下面舉例來說明DBCC SHOWCONTIG和DBCC REDBINDEX的使用方法。以應用程序中的Employee數據表作為例子,在 SQL Server的Query analyzer輸入命令:

use database_name

declare @table_id int

set @table_id=object_id('Employee')

dbcc showcontig(@table_id)

 

輸出結果:

DBCC SHOWCONTIG scanning 'Employee' table...

Table: 'Employee' (1195151303); index ID: 1, database ID: 53

TABLE level scan performed.

- Pages Scanned................................: 179

- Extents Scanned..............................: 24

- Extent Switches..............................: 24

- Avg. Pages per Extent........................: 7.5

- Scan Density [Best Count:Actual Count].......: 92.00% [23:25]

- Logical Scan Fragmentation ..................: 0.56%

- Extent Scan Fragmentation ...................: 12.50%

- Avg. Bytes Free per Page.....................: 552.3

- Avg. Page Density (full).....................: 93.18%

DBCC execution completed. If DBCC printed error messages, contact your system administrator.

通過分析這些結果可以知道該表的索引是否需要重構。如下描述了每一行的意義:

信息                                           描述

Pages Scanned                    表或索引中的長頁數

Extents Scanned                 表或索引中的長區頁數

Extent Switches                  DBCC遍歷頁時從一個區域到另一個區域的次數

Avg. Pages per Extent         相關區域中的頁數

Scan Density[Best Count:Actual Count]        

Best Count是連續鏈接時的理想區域改變數,Actual Count是實際區域改變數,Scan Density為100%表示沒有分塊。

Logical Scan Fragmentation   掃描索引頁中失序頁的百分比

Extent Scan Fragmentation    不實際相鄰和包含鏈路中所有鏈接頁的區域數

Avg. Bytes Free per Page       掃描頁面中平均自由字節數

Avg. Page Density (full)         平均頁密度,表示頁有多滿

 

 從上面命令的執行結果可以看的出來,Best count為23 而Actual Count為25這表明orders表有分塊需要重構表索引。下面通過DBCC DBREINDEX來重構表的簇索引。

 

3. DBCC DBREINDEX 用法

重建指定數據庫中表的一個或多個索引。

 

語法

DBCC DBREINDEX

    (    [ 'database.owner.table_name'    

            [ , index_name

                [ , fillfactor ]

            ] 

        ] 

    )     

 

參數

'database.owner.table_name'

是要重建其指定的索引的表名。數據庫、所有者和表名必須符合標識符的規則。有關更多信息,請參見使用標識符。如果提供 database 或 owner 部分,則必須使用單引號 (') 將整個 database.owner.table_name 括起來。如果只指定 table_name,則不需要單引號。

 

index_name

是要重建的索引名。索引名必須符合標識符的規則。如果未指定 index_name 或指定為 ' ',就要對表的所有索引進行重建。

 

fillfactor

是創建索引時每個索引頁上要用于存儲數據的空間百分比。fillfactor 替換起始填充因子以作為索引或任何其它重建的非聚集索引(因為已重建聚集索引)的新默認值。如果 fillfactor 為 0,DBCC DBREINDEX 在創建索引時將使用指定的起始 fillfactor。

 

同樣在Query Analyzer中輸入命令:

dbcc dbreindex('database_name.dbo.Employee','',90)

 

然后再用DBCC SHOWCONTIG查看重構索引后的結果:

DBCC SHOWCONTIG scanning 'Employee' table...

Table: 'Employee' (1195151303); index ID: 1, database ID: 53

TABLE level scan performed.

- Pages Scanned................................: 178

- Extents Scanned..............................: 23

- Extent Switches..............................: 22

- Avg. Pages per Extent........................: 7.7

- Scan Density [Best Count:Actual Count].......: 100.00% [23:23]

- Logical Scan Fragmentation ..................: 0.00%

- Extent Scan Fragmentation ...................: 0.00%

- Avg. Bytes Free per Page.....................: 509.5

- Avg. Page Density (full).....................: 93.70%

DBCC execution completed. If DBCC printed error messages, contact your system administrator.

通過結果我們可以看到Scan Denity為100%。


安徽新華電腦學校專業職業規劃師為你提供更多幫助【在線咨詢
国产精品一区二区精品_久久小视频_天堂va在线观看_99久久夜色精品国产亚洲96_日本手机在线视频_av成人免费
<button id="0mgmq"><pre id="0mgmq"></pre></button>
  • <tr id="0mgmq"></tr>
  • <abbr id="0mgmq"><source id="0mgmq"></source></abbr> <button id="0mgmq"></button>
  • 日本成人三级| 国内精品久久久久久久影视蜜臀| 亚洲成人自拍| 一本一本a久久| 色播亚洲婷婷| 老**午夜毛片一区二区三区| 欧美福利精品| 欧美午夜精品久久久久久蜜| 久久只有精品| 日韩视频在线观看国产| 99久久精品无码一区二区毛片| 国产精品99一区二区| 好吊色欧美一区二区三区| 亚洲精品美女久久7777777| 韩日午夜在线资源一区二区| 免费毛片一区二区三区久久久| 亚洲高清自拍| 欧美精品观看| 一区二区三区视频| 久久精品女人的天堂av| 久热精品视频| 国产免费成人| 激情久久婷婷| 欧美日韩亚洲一区二区三区在线观看 | 麻豆av一区二区三区| 国产中文一区| 欧美精品播放| 中文字幕乱码一区二区三区| 麻豆蜜桃91| 成人综合av网| 99三级在线| 国产精品一区二区三区四区五区 | 久久精品aaaaaa毛片| 久久精品国产综合精品| 久久xxxx精品视频| 午夜亚洲激情| 国产精品免费看| 国产偷自视频区视频一区二区| 黄色日韩在线| 亚洲精品1234| 国产精品日韩一区二区| 国产乱人伦精品一区二区| 欧美日韩一区二区三区免费| 欧美jizzhd精品欧美巨大免费| 亚洲图色在线| 欧美日韩国产高清视频| 一区二区日本伦理| 欧美日韩喷水| 一区二区亚洲| 国产亚洲毛片| 肥熟一91porny丨九色丨| 国产精品一区二区欧美| 香蕉久久夜色精品| 高清av免费一区中文字幕| 久久久一本精品99久久精品66| 99re在线观看视频| 91传媒视频在线观看| 国产精品久久久一区二区三区| 羞羞答答国产精品www一本| 国产精品久久精品视| 99国精产品一二二线| 欧美日韩一区二区视频在线| 水蜜桃亚洲精品| 一级做a爰片久久| 一本色道久久99精品综合| 亚洲一区三区在线观看| 国产高清一区二区三区| 日韩欧美精品一区二区| 国色天香一区二区| 国产一区二区三区的电影 | 噜噜噜在线观看免费视频日韩| 91福利视频导航| 日韩一本精品| 国产亚洲第一区| 久久久com| 激情视频一区| 久久99精品久久久久久青青日本 | 亚洲国产精品久久久久婷婷老年 | 日本一区美女| 亚洲精品欧美| 欧美极品日韩| 日韩亚洲欧美精品| 欧美午夜精品理论片a级大开眼界 欧美午夜精品久久久久免费视 | 亚洲伊人网站| 日韩久久不卡| 国产农村妇女精品一区二区| 免费精品视频一区| 最新日韩欧美| 无码免费一区二区三区免费播放| 99热这里只有成人精品国产| 国产一区二区免费电影| 国产精品日本一区二区| 亚洲在线网站| 色一情一乱一伦一区二区三欧美| 亚洲午夜av| 欧美凹凸一区二区三区视频| 一区二区三区久久网| 欧美日韩一区二 | 亚洲欧美久久234| 国产私拍一区| 米奇777在线欧美播放| 99国产一区| 在线看无码的免费网站| 欧美在线播放| 欧美午夜欧美| 久久99精品久久久久久三级| 91福利入口| 久久久久久婷| 久久久综合网| 久久久精彩视频| 久久精品日韩| 久热这里只精品99re8久| 99精品国产一区二区青青牛奶| 午夜精品久久| 资源网第一页久久久| 亚洲欧美综合一区| 夜夜春亚洲嫩草影视日日摸夜夜添夜| 精品久久久久久中文字幕动漫| 精品国产福利| 美女三级99| 日韩av电影免费在线观看| 日本一区二区免费看| 欧美日韩国产综合视频在线| 久久艹中文字幕| 日本不卡在线播放| 一区二区三视频| 欧美日韩日本国产亚洲在线| 国产精品豆花视频| 9国产精品视频| 久久精品一区| 久久国产精品亚洲va麻豆| 欧美一区少妇| 欧美日韩综合| 国产日韩亚洲欧美精品| 国产精品国产精品国产专区蜜臀ah| 亚洲制服av| 国产精品yjizz| 天堂一区二区三区| 国产精品v日韩精品v欧美精品网站| 亚洲国产日韩综合一区| 午夜一级久久| 欧美成人免费在线| 欧美国产三级| 久久国产一区| 欧美一区亚洲二区| 影音先锋在线一区| 97人人模人人爽人人少妇| 欧美日本国产精品| 亚洲天堂黄色| 国产激情美女久久久久久吹潮| 久久久久高清| 雨宫琴音一区二区在线| 91观看网站| 正在播放一区| 免费在线日韩av| 日本日本精品二区免费| 亚洲精品乱码| 久久精品国产99精品国产亚洲性色| 在线码字幕一区| 亚洲一区免费看| 日韩在线三级| 97碰碰视频| 日韩啊v在线| 在线视频观看日韩| 国产精品一区在线播放| 亚洲欧洲久久| 444亚洲人体| 中文视频一区视频二区视频三区| 国产日韩一区二区三区| 日本在线播放一区| 亚洲一区二区三区免费观看| 四虎永久国产精品| 在线亚洲自拍| 亚洲一区二区在| 国产精品一区二区三区在线观| 欧美色123| 欧美在线一区二区三区四区| 国产日韩一区二区三区| 茄子视频成人在线观看| 久久精品亚洲| 狠狠色狠狠色综合人人| 欧洲精品码一区二区三区免费看| 国产精品久久777777毛茸茸| 宅男在线精品国产免费观看| 97在线中文字幕| 999在线观看精品免费不卡网站| 欧美日韩国产综合视频在线| 亚洲综合欧美| 欧美天堂亚洲电影院在线观看| 国产中文一区二区| 国产三区精品| 欧美激情麻豆| 欧美区高清在线| 国产日韩欧美一区二区三区四区| 日韩视频一区二区三区在线播放免费观看| 色噜噜狠狠色综合网| 好看的日韩精品| 91手机在线视频| 久久久一二三| 亚洲欧美网站|