接觸索引還不是很深入,記錄一下:
因維護pdm有一段時間,pdm的使用包括建表、建索引,建約束,匯出資料,這些都是基礎;
最近又要開始接觸並熟練清楚重建索引的好處。
眾所周知,sqlserver 資料儲存的最小單位是頁
檢視表設計雖然建立了一些非聚集索引,但是重複性很大,效率不高;
通過dbcc showcontig /* 判斷是否需要重建索引
dbcc showcontig 正在掃瞄 table1 表...
已執行 table 級別的掃瞄。
- 掃瞄頁數................................: 20563
- 掃瞄區數..............................: 2994
- 區切換次數..............................: 7394
- 每個區的平均頁數........................: 6.9
- 掃瞄密度 [最佳計數:實際計數].......: 34.77% [2571:7395]
- 邏輯掃瞄碎片 ..................: 36.29% 無序頁的百分比。該百分比應該在0%到10%之間,高了則說明有外部碎片。
- 區掃瞄碎片 ..................: 91.02% 無序擴充套件盤區在掃瞄索引葉級頁中所佔的百分比。該百分比應該是0%,高了則說明有外部碎片。
- 每頁的平均可用位元組數........................: 375.3
- 平均頁密度(滿).....................: 95.36% 每頁上的平均可用位元組數的百分比的相反數。低的百分比說明有內部碎片。
*/此執行結果提示明顯:重建索引上場,下面摘了一段例子來說明dbcc showcontig的使用方法。
use database_name
declare @table_id int
set @table_id=object_id(table_id)
dbcc showcontig(@table_id)
重建指定資料庫中表的乙個或多個索引:dbcc redbindex(@table_id)
SQLServer 重建索引
在做維護專案的時,特別是資料庫轉移時,經常會遇到索引維護的問題,通過語句,我們就可以判斷某個表的索引是否需要重建。分析表的索引建立情況 dbcc showcontig table dbcc showcontig 正在掃瞄 table 表.表 table 53575229 索引 id 1,資料庫 id...
SQLServer 重建索引前後對比
在做維護專案的時,我們經常會遇到索引維護的問題,通過語句,我們就可以判斷某個表的索引是否需要重建。執行一下語句 先分析表的索引 分析表的索引建立情況 dbcc showcontig table dbcc showcontig 正在掃瞄 table 表.表 table 53575229 索引 id 1...
SQLServer 重建索引前後對比
在做維護專案的時,我們經常會遇到索引維護的問題,通過語句,我們就可以判斷某個表的索引是否需要重建。執行一下語句 先分析表的索引 分析表的索引建立情況 dbcc showcontig table dbcc showcontig 正在掃瞄 table 表.表 table 53575229 索引 id 1...