mysql协议简单认识

Wireshark分析MySQL数据包

php 代码:

$c = mysql_connect('rm-2ze055i2o78XXXuncs.com','yi_play_user','0A5iXXXXl9');

sleep(10);
$res = mysql_query('select uid,name,mobile from yi_play.yi_user limit 0,280');
sleep(10);

if($c){
    echo 'connect ok';
}else{
    echo 'connect err';
}
使用wireshare 抓取数据包如下:


分析:

  1.   No 81-87 是客户端与服务端认证阶段
  2.   201 发送sql语句的包
  3.   203- 211 服务端返回结果集 数据包 :如下

改变过滤条件 如 ip.addr=59.110.200.xxx


分析:

  1.  78-80 是tcp的三次握手
  2. 267-271 是tcp断开连接的过程
  3. 中间部分 的protocol 为 TCP 的包作用是什么? 还不知道请大神留言指导,在此感谢!吐舌头


展开mysql报文结构 : 由 消息头(长度3个字节+ 序号1字节)+ 消息体组成: 如下


序号规律:

  1.  值范围 0-255 ;  81-87包(认证) 对应 序号 0-4; 198-200包 对应序号 0-1; 201-211 包(查询sql执行) 对应 0-255 和0- 30包; 
  2.  266包(mysql客户端断开连接) 对应 序号0





评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值