mycat单表插入(一)

2020-04-08  本文已影响0人  smallmartial

mycat单表插入(一)

1.单库单表插入,交互图:

image-20200408144230433.png

mycat server的请求流程如下:

1.mycat server接收 客户端发来的请求。

2.然后获得路由,进行路由

3.获取mysql的链接,执行sql

4.响应执行之后的结果,发送给客户端。

2.执行sql的过程

mycat单表插入-Page-1.png
/**
 * 前端命令处理器
 *
 * @author mycat
 */
public class FrontendCommandHandler implements NIOHandler
{
//INSERT/SELECT/UPDATE/DELETE 等 SQL 归属于 MySQLPacket.COM_QUERY
    @Override
    public void handle(byte[] data)
    {
       //.....省略代码
        switch (data[4])
        {
            case MySQLPacket.COM_INIT_DB:
                commands.doInitDB();
                source.initDB(data);
                break;
                //查询命令
            case MySQLPacket.COM_QUERY:
               //计数查询
                commands.doQuery();
                //执行查询命令
                source.query(data);
                break;
            case MySQLPacket.COM_PING:
                commands.doPing();
                source.ping();
                break;
            case MySQLPacket.COM_QUIT:
                commands.doQuit();
                source.close("quit cmd");
                break;
            case MySQLPacket.COM_PROCESS_KILL:
                commands.doKill();
                source.kill(data);
                break;

                //......

        }
    }

}
上一篇下一篇

猜你喜欢

热点阅读