重建索引工作 (維護計畫)
適用於: SQL Server
使用 [重建索引工作] 對話方塊,以新的填滿因數重新建立資料庫資料表上的索引。 填滿因數會決定索引中每頁的空白數量,以配合未來擴充需要。 將資料加入資料表時,因為沒有維護填滿因數,所以可用空間都會填滿。 重新組織資料與索引頁面可以重新建立可用空間。
[重建索引工作] 會使用 ALTER INDEX 陳述式。 如需此頁面所描述之選項的詳細資訊,請參閱 ALTER INDEX (Transact-SQL)。
選項。
[連接]
選取執行此工作時要使用的伺服器連接。
新增
建立新的伺服器連接,以便執行此工作時使用。 下面會描述 [新增連接] 對話方塊。
資料庫
指定受此工作影響的資料庫。
所有資料庫
產生維護計畫,並針對所有 SQL Server 資料庫執行維護工作,但
tempdb
除外。所有系統資料庫
產生維護計畫,針對每個 SQL Server 系統資料庫執行維護工作,但
tempdb
除外。 不會針對使用者建立的資料庫執行維護工作。所有使用者資料庫
產生維護計畫,針對所有使用者建立的資料庫執行維護工作。 不會針對 SQL Server 系統資料庫執行維護工作。
這些特定的資料庫
產生維護計畫,只針對選取的資料庫執行維護工作。 如果選擇此選項,則必須在清單中至少選取一個資料庫。
注意
維護計畫只針對相容性層級設為 80 (含) 以上的資料庫來執行。 不會顯示相容性層級設為 70 或更低的資料庫。
Object
限制 [選取範圍] 格線僅顯示資料表、檢視或兩者。
選取範圍
指定受此工作影響的資料表或索引。 [物件] 方塊中的 [資料表和檢視] 為選取狀態時無法使用。
預設每頁可用空間
將資料庫中的資料表索引卸除,並以建立索引時指定的填滿因數重新建立它們。
將每頁可用空間變更為
將資料庫中的資料表索引卸除,並以新的、自動計算的填滿因數重新建立它們,以在索引頁面上保留指定的可用空間。 百分比愈高,在索引頁面上保留的可用空間就愈多,而索引也愈大。 有效的數值範圍為 0 到 100。
在 tempdb 中排序結果
使用
SORT_IN_TEMPDB
選項,決定索引建立期間產生的中繼排序結果要暫時儲存的位置。 如果不需要排序作業,或排序可在記憶體中執行,即忽略SORT_IN_TEMPDB
選項。索引頁預留空間
指定索引填補
索引保留在線上
使用
ONLINE
選項,而這個選項可讓使用者在索引作業期間存取基礎資料表或叢集索引資料以及任何相關的非叢集索引。注意
並非所有 Microsoft SQL Server 版本都提供線上編製索引作業。 如需 SQL Server 版本支援的功能清單,請參閱 SQL Server 2022 的版本和支援功能。
不要重建索引 | 離線重建索引
指定如何處理無法在線上重建的索引類型。
MAXDOP
指定一個值來限制執行平行計畫所用的處理器數目。
使用低優先權
選取此選項以等候低優先權鎖定。
在等候之後中止
指定經過 [持續時間上限] 所指定的時間之後該怎麼做。
持續時間上限
指定等候低優先權鎖定的時間上限。
檢視 T-SQL
根據選取的選項,檢視此工作在伺服器上執行的 Transact-SQL 陳述式。
注意
受影響的物件數目較為大量時,會多花一些時間才會顯示。
索引統計資料選項
在舊版的 Microsoft SQL Server 中,於重新組織或重建大型索引時,可能會導致系統變慢。 SQL Server 2016 (13.x) 已針對這類索引作業實作重大效能改善。
此外,舊版中控制的細微性相對較不精確。 這使系統在某些索引並未嚴重片段化的情況下,也會對它們進行重新組織或重建,進而浪費資源。 維護計畫使用者介面 (UI) 上的新控制項,可讓您根據索引統計資料準則,排除不需要重新整理的索引。 針對此功能,會在內部使用下列 Transact-SQL 動態管理檢視 (DMV):
掃描類型
系統必須使用資源來收集索引統計資料。 您可以根據所需的索引統計資料精確度,選擇使用相對較少或更多的資源。 UI 會提供下列精確度層級的清單,您必須選擇其中一個:
- 快速
- 取樣
- 詳細
只在下列情況下才進行索引最佳化:
UI 提供下列可調整的篩選條件,可讓您用來避免重新整理還不需要立即重新整理的索引:
- 片段 > (%)
- 頁面計數 >
- 使用時間在過去 (天)
新增連接對話方塊
連線名稱
輸入新連接的名稱。
選取或輸入伺服器名稱
選取執行此工作時要連接的伺服器。
[重新整理]
重新整理可用的伺服器清單。
輸入要登入到伺服器的資訊
指定如何對伺服器進行驗證。
使用 Windows 整合式安全性
使用 Microsoft Windows 驗證,來連接 SQL Server 資料庫引擎執行個體。
使用特定的使用者名稱和密碼
使用 SQL Server 驗證來連接 SQL Server 資料庫引擎執行個體。 此選項無法使用。
使用者名稱
提供驗證時要使用的 SQL Server 登入。 此選項無法使用。
密碼
提供驗證時要使用的密碼。 此選項無法使用。