要解析mysql协议需要了解一下知识和软件
wireshark 是一款网络抓包工具,可以让我们很方便的查看mysql协议。
网络字节序分为大端法和小端法,它们的区别可以参考其它网站,在此不做叙述。
golang是一款非常赞的开发语言,学习成本比较低,并发性能好的特点
mysql 协议分为报文头和报文体
这里为了简单起见,没有处理任何的异常情况
package main
import (
"bytes"
"fmt"
"io"
"net"
)
type Handshake struct {
//1Byte 协议版本号
protocol byte
//n Byte 服务器版本信息(Null-Termimated-String)
version string
//4Byte服务器线程ID
theadID int
//8bytes 随机挑战数
salt1 string<