天天看点

在SSMS里查看TDS数据包内容在SSMS里查看TDS数据包内容

摘抄自《SQLSERVER2012实施与管理实战指南》

要具体查看TDS数据库的内容,我们可以:

用NETWORK MONITOR工具来监控TDS数据包的内容

或者开启trace flag4052、4055、3605,那么SQLSERVER会把接收到的和发送的TDS数据包在

SQLSERVER错误日志里显示。开启这些trace flag会对性能有影响,因此只能在测试环境里开启。

用如下命令行启动数据库,随后运行上述查看数据库版本的ADO VBScript脚本

sqlservr.exe -c -skatmai -T4052 -T4055 -T3605

在SSMS里查看TDS数据包内容在SSMS里查看TDS数据包内容

用命令行不行,只能GUI,在添加前一定要停掉SQLSERVER,才能添加启动参数,添加完毕之后重新启动SQL就可以看到接收的TDS数据包

每次只能添加一行

在SSMS里查看TDS数据包内容在SSMS里查看TDS数据包内容
在SSMS里查看TDS数据包内容在SSMS里查看TDS数据包内容

在sqlserver错误日志里就能看到如下TDS数据包。这里TDS包的每一个字节都有其特定的含义。

在SSMS里查看TDS数据包内容在SSMS里查看TDS数据包内容

如接收包的第一字节01,代表SQL收到的命令是SQL Batch命令,第二个01代表的是TDS数据包状态

28代表TDS包的长度。具体每个字节的含义,读者可以参考TDS规范

<a href="http://msdn.microsoft.com/en-us/library/dd304523.aspx">http://msdn.microsoft.com/en-us/library/dd304523.aspx</a>

在SSMS里查看TDS数据包内容在SSMS里查看TDS数据包内容