您的位置:首页 > 数据库

使用 SQL Server Database Tuning Advisor(DTA)

2008-08-01 23:20 357 查看

前言

從上回資料庫索引的重要性中我知道了資料庫索引的重要,但我的經驗還淺,可能不清楚有那些索引需要建立,除了土法煉鋼一個一個試外,軟微有出DTA工具(Oracle不知到有沒有)協助你找出那些索引需要建立。

特色

利用查詢最佳化工具來分析工作負載中的查詢,以建議資料庫索引的最佳混合情況。

針對工作負載所參考的資料庫來建議對齊或非對齊的資料分割。

建議工作負載所參考之資料庫的索引檢視。

分析所提出之變更的效果,其中包括索引用法、資料表之間的查詢分佈,以及工作負載中的查詢效能。

建議針對一小組問題查詢來微調資料庫的方式。

可讓您指定磁碟空間條件約束之類的進階選項來自訂建議。

提供報表來總結針對給定工作負載來實作建議的效果。

設想替代方案,讓您以假設性組態的形式來提供可能的設計選項,供 Database Engine Tuning Advisor 進行評估。

安裝

SQL Server Database Tuning Advisor附屬在用戶端元件的管理工具中,一般安裝時都會安裝(你也可以不安裝資料庫,只安裝工具)。



圖1 安裝SQL Server Database Tuning Advisor

附註:
註:DAT除了無法連結SQL Express,其他版本都可以使用(SQL 2000就不知道了)。

啟動

啟動DTA有幾種方式

開啟[Sql Server Management Studio],於查尋視窗(可以是自己打,也可以是開始檔案),右鍵點擊[Analyze Query In Database Engine Tuning Advisor](我比較喜歡用這個方式)



圖二 於查尋視窗啟動DTA。

在 Windows 的 [開始] 功能表上,依序指向 [程式集]、[Microsoft SQL Server 2005] 和 [效能工具],再按一下 [Database Engine Tuning Advisor]。

這二種方式啟動的主要差異點,方法一使用查尋而方法二使用檔案或表格來分析。



圖三 二個方式啟動的差異。

算是一個小技巧吧,按下資料庫旁的小箭頭,列出的資料有每個Table的資料列



圖四 列出的資料有每個Table的資料列

執行

設定好條件後(進階設定請參考線上文件,一般只要用方式一啟動再選擇Table就可以執行了)

在[Actions]工具列上,點擊[Start Analysis]或按F5。

執行時會增加[Progress]標籤,顯示目前的執行結果。

報行完成時會增加[Recommendations]與[Reports]二個標籤。



圖五 執行完成的建議選項

建議

執行完成時,DTA會分析出可改善的百分率及二種建議。

Patitiion

Index

如果你覺得建議沒有問題可以套用建議或儲存。

在[Actions]工具列上,點擊[Apply Recommendations]或[Save Recommendations]。



圖六 建議的內容

報表

一些資訊,自己看吧。

後話

DTA把每一個分析,叫作[Session],每一個[Session]只能執行一次,如果想要再執行同樣的[Session],我用的方式是匯出再匯入,不是很方便,我有把目前正在開發的專案資料庫拿來分析,一個SQL語法列了7、8建議,其中一個Table就要建立5、6索引,有點傻掉了,真不知道是否要完全相信它。

參考

線上文件


Database Engine Tuning Advisor 參考

http://technet.microsoft.com/zh-tw/library/ms173494.aspx

Database Engine Tuning Advisor 教學課程
http://technet.microsoft.com/zh-tw/library/ms166575.aspx


測試


Virtual Labs

SQL Server 2005 SQL Query Tuning

http://msevents.microsoft.com/CUI/WebCastEventDetails.aspx?EventID=1032290418&EventCategory=3&culture=en-US&CountryCode=US

注:因為我的個人電腦沒有灌所以我在Virtual Labs上測試。


WebCast

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: