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

Abfragen eines MySQL-Benutzers überwachen

Es gibt ein paar Möglichkeiten, die ich vorschlagen kann.

  1. SELECT * FROM information_schema.PROCESSLIST WHERE USER="someuser"; Jetzt liegt es an Ihnen, was Sie verwenden. Schreiben Sie einen Cronjob (Linux), um ihn in einer Datei zu speichern, oder schreiben Sie ein MySQL-Ereignis, um ihn in eine MySQL-Tabelle einzugeben.
  2. Verwenden Sie das allgemeine Abfrageprotokoll und verwenden Sie Tools wie Linux awk, sed, grep usw., um die Protokolldatei zu parsen, um das gewünschte Ergebnis zu erhalten

Aber wenn Sie nicht daran gewöhnt sind, Linux-Kommandozeilenbefehle zu schreiben, können Sie mk-query-digest verwenden oder kann sogar benutzerdefinierte Überwachungstools wie nagios konfigurieren , cacti usw. Aber ich persönlich bevorzuge MONyog , es macht sowohl Punkt 1 als auch 2 perfekt und das Beste von allem, es hat eine GUI.