溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

如何使用mysqlsniffer捕獲SQL語句

發(fā)布時間:2021-07-16 10:19:43 來源:億速云 閱讀:188 作者:chen 欄目:MySQL數(shù)據(jù)庫

本篇內(nèi)容主要講解“如何使用mysqlsniffer捕獲SQL語句”,感興趣的朋友不妨來看看。本文介紹的方法操作簡單快捷,實用性強。下面就讓小編來帶大家學習“如何使用mysqlsniffer捕獲SQL語句”吧!

MySQL5.1之前general log不能在運行時啟用或禁用,有時想捕捉SQL來查找問題就很麻煩,偶然間發(fā)現(xiàn)一個很不錯的小工具:mysqlsniffer,可以用來捕捉SQL語句,使用幫助如下:

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

Usage: mysqlsniffer [OPTIONS] INTERFACE

OPTIONS:
  --port N        Listen for MySQL on port number N (default 3306)
  --verbose       Show 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
  --v40           MySQL 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是指網(wǎng)卡號,如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語句”有了更深的了解,不妨來實際操作一番吧!這里是億速云網(wǎng)站,更多相關(guān)內(nèi)容可以進入相關(guān)頻道進行查詢,關(guān)注我們,繼續(xù)學習!

向AI問一下細節(jié)

免責聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI