传入和传出字节的 SQL Server 性能计数器

Posted

技术标签:

【中文标题】传入和传出字节的 SQL Server 性能计数器【英文标题】:SQL Server performance counter for incoming and outgoing bytes 【发布时间】:2013-05-22 09:37:01 【问题描述】:

对于一个项目,我需要读取实例或数据库的 SQL-Server (2012) 实例的每秒传入和传出字节数(没关系)。为此,我找到了以下性能计数器:

SQL Server、代理/DBM 传输对象

每秒接收 I/O 字节 每秒发送 I/O 字节数

当启动 SQL Server Management Studio 并执行一些选择语句时,性能计数器的值保持为 0。当我包含客户端统计信息时,我看到从客户端发送的字节数和从服务器发送的字节数不是 0。我是执行这些选择语句到默认安装在同一台电脑上。

有没有人可以解决这个问题?

提前致谢

【问题讨论】:

【参考方案1】:

文档解释了SQL Server, Broker / DBM Transport Object 的措施:

Broker / DBM Transport 性能对象包含性能 为 Service Broker 报告网络信息的计数器和 数据库镜像

Transact-SQL 流量没有性能计数器。如果有帮助,DMV sys.dm_exec_connections 将汇总连接的流量大小。如果流量发生在网络接口上,那么您可以使用系统网络计数器,即Network Interface Object。但是本地测试不会注册任何内容,因为连接将使用shared memory protocol。

话虽如此,必须测量 SQL Server Transact-SQL 网络流量并不常见。如果问题出现了,那么你做错了。网络流量应始终可以忽略不计。每个人都感兴趣的维度是 IO,SQL Server, Buffer Manager Object、SQL Server, Databases Object 和像 sys.dm_io_virtual_file_stats 这样的 DMV 都有支持。

【讨论】:

以上是关于传入和传出字节的 SQL Server 性能计数器的主要内容,如果未能解决你的问题,请参考以下文章

如何从 Ant Media Server 中获取所有的传入和传出流名称?

带参数的ms sql server的扩展存储过程,怎么传递参数

将数据从C#传入和传出DLL

自定义 SQL Server 性能计数器

自定义SQL Server性能计数器

SQL Server数据库镜像关键性能计数器