Mysql
 sql >> Datenbank >  >> RDS >> Mysql

So verwenden Sie Wireshark, um MySQL-Abfragen sql klar zu erfassen

Sie können tshark verwenden und in einem pcap speichern oder einfach die Felder exportieren, an denen Sie interessiert sind.

So speichern Sie in einem pcap (wenn Sie Wireshark zum späteren Anzeigen verwenden möchten):

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)

So speichern Sie in einer Textdatei:

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

Sie können auch BPF-Filter mit tcpdump (und Wireshark Pre-Cap-Filtern) verwenden. Sie sind komplexer, belasten Ihr System jedoch weniger, wenn Sie viel Datenverkehr erfassen.

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

HINWEIS:
*Dies sucht nach 03 (ähnlich mysql.command==3) innerhalb der TCP-Nutzdaten.
**Da dies ein ziemlich lockerer Filter ist, habe ich auch 3306 hinzugefügt, um nur den Verkehr zu beschränken, für den bestimmt ist dieser Port.***Der Filter basiert auf Ihrem Screenshot. Ich kann es im Moment nicht validieren, also lassen Sie es mich wissen, wenn es nicht funktioniert.

Beispielausgabe: