編寫各大終端的程式員常常有“SQL語言很簡單,DBA工作很輕松”的錯覺,用慣了SQLite及其擴充架構OrmLite和GreenDAO的Android程式員更是如此,尤其當一個Android程式員看見自己上大學時又挂科又留級的損友從事DBA工作之後:“不好好學習也就隻能用SQL增删改查了”。
然而和各大終端編寫SQL代碼僅為了給界面做緩存不同,在伺服器端的SQL Server的日常管理中,DBA需要考慮的是如何讓SQL Server高效運作,且性能良好;DBA不僅需要了解資料庫的日常運作情況,對性能進行分析和調優,還需要對線上環境部署監控。随着管理的SQL Server伺服器日漸增多,如何實作監控自動化成了DBA要面對的最緊迫的問題。
《SQL Server監控和診斷》一書為希望深入了解如何進行SQL Server自動化監控和診斷的DBA編寫,能讓有一定基礎的DBA的技術水準如雨後春筍般成長,第一章《SQL Server監控介紹》開篇點題,介紹了SQL Server監控的概念,也強調了SQL Server監控和診斷的重要性。
本書第二章《SQL Server監控事件系列》首先介紹了SQL跟蹤的概念,接下來介紹并詳細分析了預設跟蹤和黑盒跟蹤兩種跟蹤方式,并舉例說明兩種方式在實踐中的應用;第三章《SQL Server進階診斷系列》首先介紹了SQL Server的擴充事件,以及如何利用擴充事件預防死鎖,緊接着介紹了SQL Server的環形緩沖區的數組和清單兩種實作方法,然後舉例講解了Ring Buffer的幾種常見用途:診斷SQL Server記憶體壓力 、擷取SQL程序的CPU使用率和跟蹤異常等 。
《SQL Server監控和診斷》不但傳授了我自動化管理的日漸增多的SQL Server伺服器的方法,也改變了我認為SQL Server隻是一個略複雜的SQLite的觀念,更徹底治愈了我對DBA工作的偏見,使我明白了一個能勝任DBA的人的能力不局限于使用SQL增删改查,也包括如何讓SQL Server運作得更好。