你們好,這是我在博客園寫的第一篇博文,之因此要開這個博客,是我對MS SQL技術學習的一個興趣記錄。html
做爲計算機專業畢業的人,本身對技術的掌握老是以爲很膚淺,博而不專,到如今我才發現本身的興趣所在,因而我經過網絡找了各類MS SQL技術的相關文檔,總以爲講得比較乾澀,沒有一個系統性,今年3月底我無心瀏覽到一個網站提供免費的性能調優的半年培訓(http://www.sqlpassion.at/academy/performance-tuning-training-plan/),網站全部人會在每週往你郵箱發送一份性能調優的培訓材料,因而在今天,一個多月學習下來,我以爲本身對SQL SERVER的理解已經開始深刻,因此我以爲應該把這些材料共享給你們,順便對本身學習MS SQL技術一個記錄。sql
由於我以爲,不少東西只有本身對別人講解一遍,纔會加深本身的理解,順便提高本身。數據庫
如下開始是個人學習材料分享,這個是第0篇,總論:緩存
-
第1個月:數據庫基礎
- 在第1個月咱們會經過討論在SQL SERVER中的基本概念,創建SQL SERVER的基礎。在第一個月的4個星期裏咱們會學到:
-
第2個月:索引
- 基於你已在第1個月學到的知識,第2個的一切都是關於SQL Server中的索引。有了好的索引戰略,你就能夠得到大幅度提速SQL Server工做。這4周咱們會涵蓋(如下)細節。
-
第3個月:執行計劃
- 當咱們提交查詢給SQL Server,咱們經過T-SQL語句只告訴SQL Server咱們要什麼。但在SQL Server內部倒是編譯成執行計劃。執行計劃是咱們如何獲取咱們須要數據的獲取戰略。若是你有性能問題,你就須要理解如何讀懂並調整生成的執行計劃。這4周你會學到關於執行計劃的下列內容。
-
第4個月:統計信息
- 統計信息是SQL Server數據庫裏最重要的部分,在生成執行計劃時,統計信息使用來決定你的查詢裏多少列能夠被返回。若是你的統計信息過時了,你會得到來自SQL Server次佳的執行計劃。所以咱們把一個月的時間致力於統計信息,只有這樣你才能夠對它們很是熟悉。這個月咱們會談到:
-
第5個月:鎖,阻塞,死鎖
- 到目前爲止做爲開發或數據庫管理員的你,你的生活都還太平,由於咱們只是單用戶與SQL Server打交道。若是是多用戶,在SQL Server內部會發什麼呢?在那個狀況下SQL Server須要得到鎖,這個最終會引起阻塞的狀況。並且,你若不幸的話,阻塞會致使死鎖。爲你準備(迎接)這些情景,這個月咱們會談到:
-
第6個月:性能監控與故障排除
- 哇哦,終於你到了性能調優的最後一個月。你已經在成爲性能調優專家的路上了。可是你仍是須要一些額外知識:在SQL Server中運行中,咱們如何作性能監控與故障排除來避免性能上的問題。所以在最後一個月咱們會涉及: