程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 數據庫知識 >> SqlServer數據庫 >> 關於SqlServer >> SQL Server 服務器性能指標

SQL Server 服務器性能指標

編輯:關於SqlServer

1、Memory\Pages/sec  
  2、Network   Interface(Intel[R]   82546EB   Based   Dual   Port   Network   Connection)\Bytes   Total/sec  
  3、PhysicalDisk(_Total)\%   Disk   Time  
  4、Processor(_Total)\%   Processor   Time  
  5、Processor(_Total)\Interrupts/sec  
  6、SQLServer:Locks(_Total)\Average   Wait   Time   (ms)  
  7、SQLServer:Locks(_Total)\Lock   Requests/sec  
  8、SQLServer:Locks(_Total)\Lock   Timeouts/sec  
  9、SQLServer:Locks(_Total)\Lock   Wait   Time   (ms)  
  10、SQLServer:Locks(_Total)\Lock   Waits/sec  
  11、SQLServer:Locks(_Total)\Number   of   Deadlocks/sec  
  12、System\Processor   Queue   Length

[前話]收集性能計數器注釋,以備使用!
[內容]
1  % Processor Time (Processor _Total)
指處理器用來執行非閒置線程時間的百分比。計算方法是,度量處理器用來執行空閒線程的時間,然後用 100% 減去該值。
如果該參數值持續超過95%,表明瓶頸是CPU。可以考慮增加一個處理器或換一個更快的處理器。2  Processor\% User Time\_Total
   表示耗費CPU的數據庫操作,如排序,執行aggregate functions等。如果該值很高,可考慮增加索引,盡量使用簡單的表聯接,水平分割大表格等方法來降低該值。
3  Memory\Pages/sec
   Hard Paging-Memory:Pages/sec > 0 或 Memory:Page Reads/sec > 5
Memory:Pages/sec > 0 或 Memory:Page Reads/sec > 5 表示 Windows 將通過磁盤解決內存引用(強制分頁錯誤)。這需要消耗磁盤 I/O 和 CPU 資源。Memory:Pages/sec 是一個指示 Windows 正在執行的分頁數量和數據庫服務器當前的 RAM 配置是否充足的有效指示器。Performance Monitor 中的強制分頁信息的子集是 Windows 每秒鐘必須讀取分頁文件以解決內存引用的次數,它用“Memory:Pages Reads/sec”表示。如果“Memory:Pages Reads/sec > 5,那麼這對於性能是不利的。
 
    每秒磁盤讀寫頁數
這會導致硬頁故障,從而導致SQL Server依賴頁文件而不是依賴內存。如果這個計數器的平均值為20,你可能需要添加額外的RAM來停止內存分頁。
 
4   Memory\Available Mbytes
     它測量可用於運行進程的物理內存量(單位為兆字節)。如果此值低於總物理 RAM 的 5%,則意味著內存不足,分頁活動可能會增加。要解決此問題,應增加更多的內存。
5  Memory: Page Faults / sec
  如果該值偶爾走高,表明當時有線程競爭內存。如果持續很高,則內存可能是瓶頸
6  PhysicalDisk\Avg. Disk Queue Length\_Total
該值應不超過磁盤數的1.5~2倍。要提高性能,可增加磁盤。注意:一個Raid Disk實際有多個磁盤。
7  PhysicalDisk\Avg. Disk sec/Read\_Total
   它測量從磁盤讀取數據的平均時間(以秒為單位)。如果此數字大於 25 毫秒 (ms),則意味著從磁盤讀取數據時磁盤系統發生了延遲。對於托管 SQL Server(R) 和 Exchange Server 的關鍵任務服務器,可接受的阈值要低得多,約為 10 ms。
8  PhysicalDisk\Avg. Disk sec/Write\_Total
   它測量將數據寫入磁盤所需的平均時間(以秒為單位)。如果此數字大於 25 ms,則意味著寫入磁盤時磁盤系統發生了延遲。對於托管 SQL Server 和 Exchange Server 的關鍵任務服務器,可接受的阈值要低得多,約為 10 ms
9  PhysicalDisk\Disk Reads/sec\_Total
                  
   
取決於制造商檢查磁盤的指定傳送速度,以驗證此速度沒有超出規格。通常,Ultra Wide SCSI 磁盤
每秒可以處理 50 到 70 次 I/O 操作。
10 PhysicalDisk\Disk Writes/sec\_Total
                  
   
取決於制造商檢查磁盤的指定傳送速度,以驗證此速度沒有超出規格。通常,Ultra Wide SCSI 磁盤
每秒可以處理 50 到 70 次 I/O 操作。
 
 
9b  PhysicalDisk\Disk sec /Reads\_Total
   <8ms
10b PhysicalDisk\Disk sec /Writes \_Total
   < 8ms (non cached) < 1ms (cached)
11 SQLServer:Access Methods\Full Scans/sec
  a每秒不受限制的完全掃描數。這些掃描可以是基表掃描,也可以是全文索引掃描。合理范圍:<5
b如果該指標的值比1或2高,應該分析設計的查詢以確定是否確實需要全表掃描,以及SQL查詢是
否可以被優化
12 SQLServer:Access Methods\page Splits/sec
  每秒由於索引頁溢出而發生的頁拆分數。
   合理范圍:越小越好,可降低填滿因子的設定值或重建索引還減少每秒的頁分割數量。
13 SQLServer:Access Methods\Worktables Created/sec
   每秒創建的工作表數。例如,工作表可用於存儲查詢假脫機、LOB 變量、XML 變量和游標的臨時結果。
 
14 SQLServer:Buffer Manager\Buffer cache hit ratio
 比率最好為90% 或更高。表示90% 以上的數據請求可以從數據緩沖區中獲得所需數據。
SQLServer : Cache Manager: Cache Hit RatiOSQL
  該值越高越好。如果持續低於80%,應考慮增加內存。 注意該參數值是從SQL Server啟動後,就一直累加記數,所以運行經過一段時間後,該值將不能反映系統當前值。
15 SQLServer:Buffer Manager\Checkpoint pages/sec
  由要求刷新所有髒頁的檢查點或其他操作每秒刷新到磁盤的頁數。
16 SQLServer:Buffer Manager\Lazy writes/sec
  每秒被緩沖區管理器的惰性編寫器寫入的緩沖區數。惰性編寫器是一個系統進程,用於成批刷新髒的老化的緩沖區(包含更改的緩沖區,必須將這些更改寫回磁盤,才能將緩沖區重用於其他頁),並使它們可用於用戶進程。惰性編寫器不需要為創建可用緩沖區而頻繁執行檢查點。
合理范圍:0
17 SQLServer:Buffer Manager\Page life expectancy
  頁若不被引用將在緩沖池中停留的秒數。
  Page Life Expectancy (PLE) 計數器幫助確定是否內存不足。PLE 計數器顯示數據頁在緩沖區高速緩存中停留的時間。行業中該計數器的可接受阈值為 300 秒。如果在很長一段時間內顯示的值平均小於 300 秒,則表明從內存中刷新數據頁的頻率過高。如果出現這種情況,將導致 Resource Monitor 負載加重,從而導致處理器的活動增多。應該將 PLE 計數器和 Checkpoints Pages/sec 計數器一起進行評估。在系統中出現檢查點時,緩沖區高速緩存中的髒數據頁被刷新到磁盤,從而導致 PLE 值下降。Resource Monitor 進程是真正將這些頁刷新到磁盤的機制,所以在出現這些檢查點期間,您應該還會看到 Lazy Writes/sec 值增加。如果完成檢查點後 PLE 值立即增加,您可以忽略這種短暫現象。另一方面,如果發現經常低於 PLE 阈值,則此時非常適合使用多出的內存緩解您的問題,同時將一些資源釋放回 CPU。
 
18 SQLServer:Databases\Data File(s) Size (KB)\sqlh2
  數據庫中所有數據文件的累計大小 (KB),包括任何自動增長。監視此計數器非常有用,例如可以確定 tempdb 的准確大小。
19 SQLServer:Databases\Log File(s) Size (KB)\sqlh2
   數據庫中所有事務日志文件的累計大小 (KB)。
20 SQLServer:Databases\Log File(s) Used Size (KB)\sqlh2
  數據庫中所有日志文件的累計已用大小。
21 SQLServer:Latches\Latch Waits/sec
  未能立即授予的闩鎖請求數。
  合理范圍:越小越好,值過大表明服務器可能存在對資源的競爭問題。
22 SQLServer:Latches\Average Latch Wait Time (ms)
   必須等待授予的闩鎖請求的平均等待時間(毫秒)。如果該指標的值很高,則系統可能正經歷嚴
重的資源競爭問題。
23 SQLServer:Locks\Lock Waits/sec\_Total
  每秒要求調用者等待的鎖請求數
24 SQLServer:Locks\Average Wait Time (ms)\_Total
   每個導致等待的鎖請求的平均等待時間(毫秒)。
25 SQLServer:SQL Statistics\Batch Requests/sec
  每秒收到的 Transact-SQL 命令批數。 這一統計信息受所有約束(如 I/O、用戶數、高速緩存大小、請求的復雜程度等)影響。 批處理請求數值高意味著吞吐量很好
26 SQLServer:SQL Statistics\SQL Compilations/sec
   每秒的 SQL 編譯數。 表示編譯代碼路徑被進入的次數。 包括 SQL Server 中語句級重新編譯導致的編譯。 當 SQL Server 用戶活動穩定後,該值將達到穩定狀態
27 SQLServer:SQL Statistics\SQL Re-Compilations/sec
   每秒語句重新編譯的次數。 計算語句重新編譯被觸發的次數。 一般來說,這個數最好較小。 在更高版本的 SQL Server 中,重新編譯發生在語句級別,而不是發生在 Microsoft SQL Server 2000 中的批處理級別。 因此,不能直接比較 SQL Server 和早期版本中該計數器的值。
28 SQLServer:Memory Manager\Memory Grants Pending
   等待工作空間內存授權的進程總數。
29 PhysicalDisk\% Idle Time
它測量磁盤在采樣間隔期間的空閒時間百分比。如果此計數器低於 20%,則表示磁盤系統處於滿負荷狀態。可考慮將當前的磁盤系統更換為速度更快的磁盤系統。  

  1. 上一頁:
  2. 下一頁: