四处寻找,也没有找到一篇关于Mysql通讯协议的文章,看来只有分析Mysql的源程序了。于是找来mysql 3.23.49的代码,打开sniffer工具。MySQL的通讯协议可能变更过多次,在3.23.49的版本里面,通讯协议的版本竟然是10。
简单的分析了一下通讯协议,现在规整如下,有些地方还不是很完善,由于我实在没有太多的时间仔细研读mysql的代码,目前我只了解到了这些。
Server 对 Client 请求的响应数据格式:
![]() |
当FLAG=0 , 2的时候 CMD Code 与 Message 的定义
![]() |
Client 对 Server 提交数据的格式:
![]() |
Command ID 与 Command Data 的说明:
![]() |
