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

Wie zeige ich die letzten auf MySQL ausgeführten Abfragen an?

Für diejenigen, die mit MySQL>=5.1.12 gesegnet sind, können Sie diese Option global zur Laufzeit steuern:

  1. Führen Sie SET GLOBAL log_output = 'TABLE'; aus
  2. Führen Sie SET GLOBAL general_log = 'ON'; aus
  3. Sehen Sie sich die Tabelle mysql.general_log an

Wenn Sie lieber in eine Datei statt in eine Tabelle ausgeben:

  1. SET GLOBAL log_output = "FILE"; Standard .
  2. SET GLOBAL general_log_file = "/path/to/your/logfile.log";
  3. SET GLOBAL general_log = 'ON';

Ich ziehe diese Methode der Bearbeitung von .cnf-Dateien vor, weil:

  1. Sie bearbeiten nicht my.cnf -Datei und potenziell permanentes Aktivieren der Protokollierung
  2. Sie suchen nicht im Dateisystem nach dem Abfrageprotokoll - oder noch schlimmer, Sie werden von der Suche nach dem perfekten Ziel abgelenkt. /var/log /var/data/log /opt /home/mysql_savior/var
  3. Sie müssen den Server nicht neu starten und keine aktuellen Verbindungen zu ihm unterbrechen.
  4. Durch einen Neustart des Servers bleiben Sie dort, wo Sie begonnen haben (das Protokoll ist standardmäßig immer noch deaktiviert)

Weitere Informationen finden Sie im MySQL 5.1 Referenzhandbuch - Server-Systemvariablen - general_log