Poiché sviluppiamo utilizzando il server remoto Mysql
, quindi non è possibile controllare facilmente query sql, se si utilizza il server locale è possibile tail - f general_log_file
per vedere quali SQL vengono eseguiti quando si chiama qualche interfaccia http. Così ho installato un wireshark
per catturare queste query SQL invia da locale. Inizialmente utilizzo mysql locale per verificarlo.Come usare wireshark per acquisire mysql query sql chiaramente
poi eseguite due query SQL terminale mysql
select version();
select now();
ma molto deludente non riesco a trovare queste due pacchetti SQL in wireshark ho trovato questi quattro solo pacchetti.
Ma da un post che ho saputo
Per filtrare i pacchetti MySQL è sufficiente utilizzare il filtro ‘mysql’ o ‘mysql.query! =‘’’ Quando si desidera solo i pacchetti che richiedono una query. Successivamente è possibile aggiungere una colonna personalizzata con il nome del campo 'mysql.query' per avere un elenco di query che sono state eseguite.
e l'effetto è come questo E 'conveniente per catturare solo query SQL e molto visualizzata chiaramente queste query SQL. Quindi, come posso usare wireshark
per implementarlo?
hi @Jeff S.
ho provato il vostro comando, si prega di vedere sotto
#terminal 1
tshark -i lo0 -Y "mysql.command==3"
Capturing on 'Loopback'
# terminal 2
mysql -h127.0.0.1 -u root -p
select version();
#result: nothing output in terminal 1
e tshark -i lo0 -Y "mysql.command==3" -T fields -e mysql.query
è lo stesso con tshark -i lo -Y "mysql.command==3"
anche l'uscita nulla. Ma se io uso solo tshark -i lo0
, ha uscita
Capturing on 'Loopback'
1 0.000000 127.0.0.1 -> 127.0.0.1 TCP 68 57881 → 3306 [SYN] Seq=0 Win=65535 Len=0 MSS=16344 WS=32 TSval=1064967501 TSecr=0 SACK_PERM=1
2 0.000062 127.0.0.1 -> 127.0.0.1 TCP 68 3306 → 57881 [SYN, ACK] Seq=0 Ack=1 Win=65535 Len=0 MSS=16344 WS=32 TSval=1064967501 TSecr=1064967501 SACK_PERM=1
3 0.000072 127.0.0.1 -> 127.0.0.1 TCP 56 57881 → 3306 [ACK] Seq=1 Ack=1 Win=408288 Len=0 TSval=1064967501 TSecr=1064967501
4 0.000080 127.0.0.1 -> 127.0.0.1 TCP 56 [TCP Window Update] 3306 → 57881 [ACK] Seq=1 Ack=1 Win=408288 Len=0 TSval=1064967501 TSecr=1064967501
...
Questo è esattamente come si deve fare. Cosa succede se inserisci questo nel tuo filtro? Le colonne del display cambieranno con il tuo filtro. – Solarflare