DBA 日常監控與調優常需收集 CPU、記憶體、磁碟與 SQL Server 專屬效能計數器。Windows 內建 TypePerf.exe 為輕量級命令列工具,支援即時顯示、CSV/TSV/二進位記錄檔輸出、遠端收集與計數器查詢,極適合自動化腳本與無介面環境。
| 參數 | 說明 |
|---|---|
-cf <檔案> | 指定計數器清單檔(每行一個計數器) |
-si <間隔> | 採樣間隔,預設 1 秒 |
-o <檔案> | 輸出檔路徑,預設 STDOUT |
-f <格式> | 輸出格式:CSV(預設)、TSV、BIN |
-sc <次數> | 採樣次數,預設持續至 Ctrl+C |
-q [物件] | 列出已安裝計數器(無實例) |
-qx [物件] | 列出已安裝計數器(含實例) |
-s <電腦> | 指定遠端收集目標電腦 |
-y | 所有確認提示自動答 Yes |
% Processor Time、Interrupts/secAvailable MBytes、Pages/sec% Disk Time、Avg. Disk Queue LengthBuffer cache hit ratio、Page life expectancyData File(s) Size (KB)、Log File(s) Used Size (KB)、Percent Log Used、Active TransactionsUser Connections、Logins/sec、Logouts/sec# 查詢 SQL Server 相關計數器
typeperf -q "SQLServer:"
# 收集核心計數器 60 秒,輸出 CSV
typeperf -cf counters.txt -si 1 -sc 60 -o perf_baseline.csv
# counters.txt 內容範例
\Processor(_Total)\% Processor Time
\Memory\Available MBytes
\SQLServer:Buffer Manager\Page life expectancy
\SQLServer:Databases(_Total)\Active Transactions
MSSQL$InstanceName:Object。.blg 格式,再用 Relog.exe 轉換分析。