Mysql
 sql >> база данни >  >> RDS >> Mysql

Как да използвате wireshark за ясно улавяне на mysql заявка sql

Можете да използвате tshark и да запишете в pcap или просто да експортирате полетата, които ви интересуват.

За да запазите в pcap (ако искате да използвате wireshark за преглед по-късно):

tshark -i lo -Y "mysql.command==3" -w outputfile.pcap
tshark -i lo -R "mysql.command==3" -w outputfile.pcap
-R is deprecated for single pass filters, but it will depend on your version
-i is interface so replace that with whatever interface you are using (e.g -i eth0)

За да запишете в текстов файл:

tshark -i lo -Y "mysql.command==3" -T fields -e mysql.query > output.txt

Можете също да използвате BPF филтри с tcpdump (и филтри за предварителна шапка на wireshark). Те са по-сложни, но по-малко натоварващи вашата система, ако улавяте много трафик.

sudo tcpdump -i lo "dst port 3306 and  tcp[(((tcp[12:1]&0xf0)>>2)+4):1]=0x03" -w outputfile.pcap

ЗАБЕЛЕЖКА:
*Това търси 03 (подобен mysql.command==3) в полезния товар на TCP.
**Тъй като това е доста хлабав филтър, добавих също 3306, за да огранича само трафика, предназначен за този порт.***Филтърът е базиран на вашата екранна снимка. В момента не мога да го потвърдя, така че ме уведомете, ако не работи.

Примерен изход:



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Имам проблем с изпълнението на mysqli_query

  2. Грешка в MySQL при опит за съкращаване на таблицата

  3. Синтактична грешка на Sql при използване на заявка за база данни UPDATE

  4. Как да актуализирам запис с помощта на sequelize за възел?

  5. Изберете * от таблица 1, която не съществува в таблица 2 с условно