今天早上我重新啓動了我的專用服務器。結果我的SQL Server非常敏感。我可以查詢1.500.000條記錄表,結果在幾秒內返回。如何檢查SQL Server數據庫的性能?
過了一段時間,我看到我的CPU開始增長,而且對於相同的查詢,它不再那麼快了30-50秒。
我檢查了sp_who2,沒有阻塞事務。我重建了索引。沒有變化仍然緩慢
解決這種行爲的最佳方法是什麼?如何提高性能?
這是我的任務管理器
今天早上我重新啓動了我的專用服務器。結果我的SQL Server非常敏感。我可以查詢1.500.000條記錄表,結果在幾秒內返回。如何檢查SQL Server數據庫的性能?
過了一段時間,我看到我的CPU開始增長,而且對於相同的查詢,它不再那麼快了30-50秒。
我檢查了sp_who2,沒有阻塞事務。我重建了索引。沒有變化仍然緩慢
解決這種行爲的最佳方法是什麼?如何提高性能?
這是我的任務管理器
聽起來像它可能是磁盤抖動的問題。確保您的SQL endine配置(最大內存)小於(自由)在您的系統上可用。
它是一個VM嗎?數據庫是否大 - SQL將繼續抓住內存,如果它存在 - 即使其硬盤內存 - 這本質上很慢
我嗅探內存壓力問題。頁面緩衝區可能已滿或者某些其他內存約束被點擊。先從監控重要的系統性能計數器,如:
的那一刻起,你捕捉他們重新啓動機器,然後用Excel或其他圖形工具繪製它。向混合中添加一些SQL計數器。如果您搜索「sql server performance monitor coutners」,那麼在線有很多資源。嘗試這裏提到的性能計數器:http://www.sql-server-performance.com/2007/performance-monitor-general/
觀察時間進度並將其與其他指標和percieved性能關聯起來至關重要。
要尋找的另一件事是計劃重新編譯。檢查Profiler跟蹤中的SP:Recompile
事件,看看是否存在與性能下降相關的問題。 - 參考https://support.microsoft.com/en-us/kb/243586
哪些進程正在吃掉CPU?如果可用的CPU更少,查詢當然會更慢。 – tjameson
它主要是您可以在屏幕截圖上看到的sql server – MasterMeNow
什麼是從SQL服務器請求數據?當你進行測試時,可能會少一些,現在有更多的活動。 – tjameson