zoukankan      html  css  js  c++  java
  • php一步一步实现mysql协议(一)——抓包本地mysql通信

    原由

      最近研究数据库中间件的时候,发现项目中连接中间件的时候和配置数据库一样。说明中间件必然实现了mysql协议,于是我就想研究研究mysql实现,并最终实现使用php来通TCP直连mysql

      俗话说:“工欲善其事,必先利其器”研究mysql协议,需要先把工具安装上。这里使用 wireshark 来抓包,安装 wireshark 很简单一直点击下一步就可以啦,但是注意在安装的时候把 npcap 安装上

      然后选择 “Adapter for loopback traffic capture” 网卡 

      使用php连接数据库并执行脚本:

    <?php
    $dsn = 'mysql:dbname=test;host=127.0.0.1';
    $user = 'root';
    $password = '123456';
    
    try {
        $dbh = new PDO($dsn, $user, $password);
    } catch (PDOException $e) {
        echo 'Connection failed: ' . $e->getMessage();
    }
    
    $result = $dbh->query("select * from users",PDO::FETCH_ASSOC);
    
    foreach($result as $row){
        var_dump($row);
    }

      

      在抓取数据包界面筛选 mysql 协议,结果如图

      好了到这里我们就抓取到了本机的mysql协议包数据

  • 相关阅读:
    最短路打印路径
    hdu1874(dijskstra算法和floyd算法)
    最短路径(Dijkstra算法)
    kruskal算法模板(续)
    kruskal算法模板
    最小生成树prim算法
    hdu1879(并查集)
    hdu1875 并查集
    top 1 1
    mvc 母版页中登录注册和问候的处理
  • 原文地址:https://www.cnblogs.com/itsuibi/p/13654492.html
Copyright © 2011-2022 走看看