首批通过分布式安全可靠测评,为关键业务系统打造
如何使用 Wireshark 追踪链路 SQL 执行
更新时间:2026-05-15 09:06
在进行从应用服务器端,OBProxy、OBServer 之间的链路沟通 SQL 执行时,有时候需要通过 TCPDUMP 的方式来追踪链路的路由情况以及耗时情况。TCPDUMP 是一个运行在命令行下的数据包分析器。它允许用户拦截和显示发送或收到过网络连接到该计算机的 TCP/IP 和其他数据包。Wireshark(前称 Ethereal)是一个网络封包分析软件。网络封包分析软件的功能是截取网络封包,并尽可能显示出最为详细的网络封包资料,可用来解析和阅读抓取的 TCPDUMP。而在分析和理解 OceanBase 相关的问题时,经常是需要理解客户端发送给后端的 SQL 行为。但直接使用 WISHARK 打开的 TCPDUMP 仍然无法更容易被理解。
适用版本
OceanBase 数据库所有版本。
操作步骤
用 WireShark 打开 tcpdump(也可进行拖拽)。在打开后在搜索栏中输入
tcp contains搜索关键字。
右键点击一行 packet, 选中 Follow -> TCP Stream。

为了方便展示,有两个重要的配置。
将时间配置成绝对的时间 View -> Time Display Format -> Date and Time。

通过协议端口自动识别SQL :Wireshark -> Preference -> Protocols -> MySQL TCP port (选定 2881 或 2883)。

最终就可以清晰的看到 SQL 执行的时间 (Request Query),得到的 response (Response), 以及请求的结束 (Response Quit)。
