git
mysql-protocol">https://github.com/sea-boat/mysql-protocol
概况
mysql 客户端通过删除 DB 命令包告诉服务端删除某个 schema。
mysql 通信报文结构 类型 名字 描述 int<3> payload 长度 按照 the least significant byte first 存储,3 个字节的 payload 和 1 个字节的序列号组合成报文头 int<1> 序列号 string payload 报文体,长度即为前面指定的 payload 长度删除 DB 命令包
- 1 [06] COM_DROP_DBstring[EOF] schema name
更多详情 : http://dev.mysql.com/doc/internals/en/com-drop-db.html
删除 DB 命令包操作删除 DB 命令包类
- /** * * mysql drop db packet. * @author * seaboat * email: 849586227@qq.com * blog: http://blog.csdn.net/wangyangzhizhou * @version 1.0 * @see http://dev.mysql.com/doc/internals/en/com-drop-db.html */
- public class DropDBPacket extends MySQLPacket {
- public byte flag;
- public byte[] schema;@Override public void read(byte[] data) {
- MySQLMessage mm = new MySQLMessage(data);
- packetLength = mm.readUB3();
- packetId = mm.read();
- flag = mm.read();
- this.schema = mm.readBytes();
- }@Override public void write(ByteBuffer buffer) {
- BufferUtil.writeUB3(buffer, calcPacketSize());
- buffer.put(packetId);
- buffer.put(COM_DROP_DB);
- buffer.put(schema);
- }@Override public int calcPacketSize() {
- int i = 1;
- i += schema.length;
- return i;
- }@Override protected String getPacketInfo() {
- return "MySQL Drop DB Packet";
- }
- }
就爱阅读 www.92to.com 网友整理上传, 为您提供最全的知识大全, 期待您的分享,转载请注明出处。
来源: