程序员人生 网站导航

mysql 协议的退出命令包及解析

栏目:框架设计时间:2017-03-21 08:47:39

git

https://github.com/sea-boat/mysql-protocol

概况

mysql客户端连接上mysql服务端后,当需要退出断开连接时则向服务端发送退出命令。服务端可以直接关闭连接或返回OK包。

mysql通讯报文结构

类型 名字 描写
int<3> payload长度 依照the least significant byte first存储,3个字节的payload和1个字节的序列号组合成报文头
int<1> 序列号
string payload 报文体,长度即为前面指定的payload长度

退出命令包

Payload

1              [01] COM_QUIT

更多详情 : http://dev.mysql.com/doc/internals/en/com-quit.html

退出命令包类

/**
 * 
 * @author seaboat
 * @date 2016-09⑵5
 * @version 1.0
 * <pre><b>email: </b>849586227@qq.com</pre>
 * <pre><b>blog: </b>http://blog.csdn.net/wangyangzhizhou</pre>
 * <p>quit command packet.</p>
 */
public class QuitPacket extends MySQLPacket {
    // payload length is 1,packet id is 0,payload is 1
    public static final byte[] QUIT = new byte[] { 1, 0, 0, 0, 1 };

    @Override
    public int calcPacketSize() {
        return 1;
    }

    @Override
    protected String getPacketInfo() {
        return "MySQL Quit Packet";
    }

}
------分隔线----------------------------
------分隔线----------------------------

最新技术推荐