現在一直在做的專案,資料量相對也不小,開始的時候沒有覺得,因為是剛開始,資料量還很小,在程式使用過程中速度還挺快,但是隨著資料量的不停的增長,發現程式越來越慢,甚至出現了超時的問題,因此要對程式和資料庫進行優化,前期專案比較緊,沒有針對大資料量業務進行分析設計,所以索引等相關優化沒有做到位,通過後期的大資料量導致的錯誤使用了下面的方法。
這裡簡單的講一下:如何使用資料庫引擎優化顧問優化資料庫
簡單的優化一下資料庫。
一、啟動 microsoft sql server management studio(就是sql的管理工具)
二、工具->sql server profiler
三、sql server profiler->檔案->新建跟蹤 ->執行
時間長一點,點停止 然後儲存這個跟蹤
sql server profiler->檔案->儲存->取個名字。
詳細檢視:
如何建立跟蹤 (sql server profiler)
四、sql server profiler->工具-資料庫引擎優化顧問
工作負荷 選擇剛才儲存的檔案。
在選擇要優化的資料庫和表 裡面選擇乙個(不要全選,會卡死的)
選項都是中文的,自己配置一下。
最後點下開始分析。
完成後會有建議
查詢其實已經很快了,但是這個功能模組使用頻率很高,跟據它的建議優化一下。確實提高了不少。
乙個是統計,乙個是索引
以下是網上查過來的:
1.statistics是乙個表中某幾個列的統計資訊,如乙個表是全校學生某次考試的分數,score列的型別是int,取值範圍是0到100的整數, 那麼statistc就是每個分數分別有多少人。在乙個特定的查詢中,使用索引可能加快 速度,也可能減慢速度,所以sql server要事先對使用索引的效果做乙個**,**的依據就是statistics。
2.預設情況下,表或索引更改了,統計會相應地自動更新, 以保持統計是最新的。但是可以在資料庫選項中關閉這個自動更新的功能,提高資料表的更新速度。但需要定期手動更新統計。因為過期的統計資訊會對是否使用索 引的判斷帶來誤判。沒發現sql2000和sql2005的統計有什麼區別。
3.index要依賴正確的statistics才能發揮作用。而你的sql2005優化工具對缺乏statistic的列自動產生了建立語句。
索引有很多好處和壞外,以下是索引的一點點資料,
五、檢視報告
有很多報告可以檢視。
這裡可以看到表的訪問頻率,前面的建議優化是非常正確的。
這裡有索引的報告。當索引特別大時,根據自己的實際情況進行優化
如何使用資料庫引擎優化顧問優化資料庫
如何建立工作負荷
mysql優化顧問 資料庫引擎優化顧問概述
借助 microsoftsql server 資料庫引擎優化顧問,您不必精通資料庫結構或深諳 microsoftsql server,即可選擇和建立索引 索引檢視和分割槽的最佳集合。資料庫引擎優化顧問分析乙個或多個資料庫的工作負荷和物理實現。工作負荷是對要優化的乙個或多個資料庫執行的一組 trans...
如何使用資料庫引擎優化顧問優化資料庫 《轉》
呵呵,最近俺也經常用這玩意才優化資料,懶得寫,copy了這位仁兄的文章.最近資料庫伺服器有點慢,去看看哪方面的壓力比較大!其實並不是這個lucky28 資料庫影響整個伺服器。但多少會有點影響,每個小影響積累起來就影響比較大!這裡簡單的講一下 如何使用資料庫引擎優化顧問優化資料庫 簡單的優化一下資料庫...
如何使用資料庫引擎優化顧問優化資料庫 《轉》
呵呵,最近俺也經常用這玩意才優化資料,懶得寫,copy了這位仁兄的文章.最近資料庫伺服器有點慢,去看看哪方面的壓力比較大!其實並不是這個lucky28 資料庫影響整個伺服器。但多少會有點影響,每個小影響積累起來就影響比較大!這裡簡單的講一下 如何使用資料庫引擎優化顧問優化資料庫 簡單的優化一下資料庫...