• ADADADADAD

    如何使用mysqlsniffer捕获SQL语句[ mysql数据库 ]

    mysql数据库 时间:2024-11-28 13:26:14

    作者:文/会员上传

    简介:

    MySQL5.1之前general log不能在运行时启用或禁用,有时想捕捉SQL来查找问题就很麻烦,偶然间发现一个很不错的小工具:mysqlsniffer,可以用来捕捉SQL语句,使用帮助如下:mysqlsniffer

    以下为本文的正文内容,内容仅供参考!本站为公益性网站,复制本文以及下载DOC文档全部免费。

    MySQL5.1之前general log不能在运行时启用或禁用,有时想捕捉SQL来查找问题就很麻烦,偶然间发现一个很不错的小工具:mysqlsniffer,可以用来捕捉SQL语句,使用帮助如下:

    mysqlsniffer --help
    mysqlsniffer v1.2 - Watch MySQL traffic on a TCP/IP network

    Usage: mysqlsniffer [OPTIONS] INTERFACE

    OPTIONS:
    --port NListen for MySQL on port number N (default 3306)
    --verboseShow extra packet information
    --tcp-ctrl Show TCP control packets (SYN, FIN, RST, ACK)
    --net-hdrs Show major IP and TCP header values
    --no-mysql-hdrs Do not show MySQL header (packet ID and length)
    --state Show state
    --v40MySQL server is version 4.0
    --dump Dump all packets in hex
    --help Print this

    Original source code and more information at:
    http://hackmysql.com/mysqlsniffer

    INTERFACE是指网卡号,如eth0,eth2,lo等。

    当然也有人直接tcpdump来捕捉的,方法如下:[@more@]

    tcpdump -i eth2 -s 0 -l -w - dst port 3306 | strings | perl -e '
    while(<>) { chomp; next if /^[^ ]+[ ]*$/;
    if(/^(SELECT|UPDATE|DELETE|INSERT|SET|COMMIT|ROLLBACK|CREATE|DROP|ALTER)/i) {
    if (defined $q) { print "$qn"; }
    $q=$_;
    } else {
    $_ =~ s/^[ t]+//; $q.=" $_";
    }
    }'

    如何使用mysqlsniffer捕获SQL语句.docx

    将本文的Word文档下载到电脑

    推荐度:

    下载
    热门标签: mysqlsniffersql