怎样获取Windows平台下SQL server性能计数器值

Posted 小御

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了怎样获取Windows平台下SQL server性能计数器值相关的知识,希望对你有一定的参考价值。

转载自工作伙伴Garrett, Helen “SQL Server Performance Counter captures”

Capturing Windows Performance Counters for SQL Server

SQL Server Performance Counters

The following counters are the recommended list to capture baseline performance metrics for SQL Server:

  • Memory                                              Available Mbytes             (already added above)
  • Memory                                              Page Faults/sec                (already added above)
  • Memory                                              Page Reads/sec                                (already added above)
  • Memory                                              Page Writes/sec               (already added above)
  • Paging File                                           % Usage (_Total)              (already added above)
  • Processor                                            % Privileged Time (_Total)
  • Processor                                            % Processor Time (_Total)
  • Processor                                            % User Time (_Total)
  • Physical Disk                                       % Idle Time (_Total)
  • Physical Disk                                       Avg. Disk Queue Length (_Total)
  • Physical Disk                                       Avg. Disk sec/Read (_Total)
  • Physical Disk                                       Avg. Disk sec/Transfer (_Total)
  • Physical Disk                                       Avg. Disk sec/Write (_Total)
  • SQL Server: Access                              Methods/Page Splits/sec
  • SQL Server: Buffer Manager                  Buffer Cache Hit Ratio
  • SQL Server: Buffer Manager                  Page Life Expectancy
  • SQL Server: Buffer Manager                  Page Lookups/sec
  • SQL Server: Buffer Manager                  Page Reads/sec
  • SQL Server: Buffer Manager                  Page Writes/sec
  • SQL Server: General Statistics               User Connections
  • SQL Server: Memory Manager                Memory Grants Pending
  • SQL Server: SQL Statistics                    Batch Requests/sec
  • SQL Server: SQL Statistics                    SQL Compilations/sec
  • SQL Server: SQL Statistics                    SQL Recompilations/sec
  • SQL Server: Wait Statistics                   Memory Grant Queue Waits <all instances>
  • SQL Server: Wait Statistics                   Network IO Waits <all instances>
  • SQL Server: Wait Statistics                   Non-Page Latch Waits <all instances>
  • SQL Server: Wait Statistics                   Page IO Latch Waits <all instances>
  • SQL Server: Wait Statistics                   Page Latch Waits <all instances>
  • System                                               Processor Queue Length

TypePerf

Microsoft provides a command line utility “TypePerf” which allows capturing counters from a remote system to a monitoring system and logging these either to the command window or a log file. 
More information about the TypePerf command can be found at:
https://www.microsoft.com/resources/documentation/windows/xp/all/proddocs/en-us/nt_command_typeperf.mspx?mfr=true

Using TypePerf with an Input File

Create a folder on the monitoring server named “TypePerf”.

Create a new file in the TypePerf folder named TypePerf_SQLCounters.txt.

Edit the TypePerf_SQLCounters.txt file by copying the following contents into the file:

\\\\SERVERNAME\\Memory\\Available Bytes

\\\\SERVERNAME\\Memory\\Page Reads/sec

\\\\SERVERNAME\\Memory\\Page Writes/sec

\\\\SERVERNAME\\Paging File(_Total)\\% Usage

\\\\SERVERNAME\\PhysicalDisk(_Total)\\% Disk Time

\\\\SERVERNAME\\PhysicalDisk(_Total)\\Avg. Disk Queue Length

\\\\SERVERNAME\\PhysicalDisk(_Total)\\Avg. Disk sec/Read

\\\\SERVERNAME\\PhysicalDisk(_Total)\\Avg. Disk sec/Transfer

\\\\SERVERNAME\\PhysicalDisk(_Total)\\Avg. Disk sec/Write

\\\\SERVERNAME\\Processor(_Total)\\% Privileged Time

\\\\SERVERNAME\\Processor(_Total)\\% Processor Time

\\\\SERVERNAME\\Processor(_Total)\\% User Time

\\\\SERVERNAME\\SQLServer:Access Methods\\Page Splits/sec

\\\\SERVERNAME\\SQLServer:Buffer Manager\\Buffer cache hit ratio

\\\\SERVERNAME\\SQLServer:Buffer Manager\\Page life expectancy

\\\\SERVERNAME\\SQLServer:Buffer Manager\\Page lookups/sec

\\\\SERVERNAME\\SQLServer:General Statistics\\User Connections

\\\\SERVERNAME\\SQLServer:Memory Manager\\Memory Grants Pending

\\\\SERVERNAME\\SQLServer:SQL Statistics\\Batch Requests/sec

\\\\SERVERNAME\\SQLServer:SQL Statistics\\SQL Compilations/sec

\\\\SERVERNAME\\SQLServer:SQL Statistics\\SQL Re-Compilations/sec

\\\\SERVERNAME\\SQLServer:Wait Statistics(*)\\Memory grant queue waits

\\\\SERVERNAME\\SQLServer:Wait Statistics(*)\\Network IO waits

\\\\SERVERNAME\\SQLServer:Wait Statistics(*)\\Page IO latch waits

\\\\SERVERNAME\\SQLServer:Wait Statistics(*)\\Page latch waits

\\\\SERVERNAME\\System\\Processor Queue Length

 

Perform a global replace of the SERVERNAME to match the actual server name for the SQL Server that is to be monitored.  Save the file and Close.

--------------------------------------------------------------分割线---------------------------------------------------------------------------

Go to the Start menu -> Command Prompt.

 

Change the directory to the location where the TypePerf directory was created.

At the command prompt, modify the next command to match the information for the SQL Server being monitored:

TYPEPERF -cf F:\\TypePerf\\TypePerf_SQLCounters.txt -f csv -o F:\\TypePerf\\MSLAB2191_yyyymmdd_hhmm.csv -s BRTC_MSLAB2191

-cf           Name of the file that contains the list of counters to capture

-f             format of the log file, defaults to csv

-o            Path\\name of output file

-s            Name of server to collect the counters from if one does not exist in the counter file

 

EXAMPLE:

TYPEPERF -cf F:\\TypePerf\\TypePerf_SQLCounters.txt -f csv -o F:\\TypePerf\\MSLAB2191_20161020_2025.csv -s BRTC_MSLAB2191

Press Enter to start the counter collection…  

The [\\]   will run the command and capture the counters every second.

Verify the file you specified for the output was created and is growing:

-------------------------------------------------------分割线-----------------------------------------------------------------------

When you have completed the SQL Server test, Press CTRL-C to stop the counter collection.

 

Close the Command Prompt window.

 

以上是关于怎样获取Windows平台下SQL server性能计数器值的主要内容,如果未能解决你的问题,请参考以下文章

如何在不使用 Docker 或 Windows Server 2016 上的 Confluent 平台的情况下在 Kafka 中设置 Debezium SQL Server 连接器?

从Windows迁移SQL Server到Linux

从Windows迁移SQL Server到Linux

Sql Server怎样设置sa用户登录

Ubuntu下部署SQL Server 2017

SQL Server 与 MySQL 性能相差多大