2017-09-29 13 views
0

Ich habe eine Website, die es Endbenutzern ermöglicht, einen Volltextindex in der Mariadb-Datenbank mit eingegebenen Begriffen zu suchen.Wie finde ich Statistiken darüber, wie viele Abfragen in meiner Mariadb-Datenbank ausgeführt wurden?

Die Abfragen sind wie (select columnnames from tablename where match from tablename where match(column_names) against USER_input

die von dieser Abfrage zurückgegebenen Ergebnisse verwenden, können sie auf ein Ergebnis klicken, die einen bestimmten Datensatz (eine Zeile mit mehreren Spalten zurückgibt).

Wie kann ich herausfinden, Wie viele SELECT-Abfragen wurden auf dieser Datenbank ausgeführt?

Ich möchte nur wissen, wie viele Abfragen in der Datenbank ausgeführt wurden und ob es auch einen Weg in Mariadb gibt, wo ich diese Statistik auch nach Monat, Tag analysieren kann, und Jahr, das wäre toll.

Ich habe userstat aktiviert.

Antwort

0
mysql> SHOW GLOBAL STATUS LIKE 'Com_select'; 
+---------------+-------+ 
| Variable_name | Value | 
+---------------+-------+ 
| Com_select | 9669 | 
+---------------+-------+ 

sagt (in MySQL oder MariaDB), dass 9669 SELECTs laufen seit mysqld zuletzt gestartet wurde.

Die ist keine Aufschlüsselung nach Zeit verfügbar.

Das "Allgemeine Protokoll" kann verwendet werden, um alle Abfragen aufzuzeichnen. Aber dieses Protokoll müsste geparst werden usw., um die Details zu finden, die Sie mögen. Und dieses Protokoll würde die Platte schnell füllen; Denken Sie also nicht daran, es für Monate zu benutzen. (Auch nur ein Tag ist riskant, Raum-weise.)

Für MariaDB und Percona Versionen:

Für einen einzelnen Benutzer ist es so etwas wie

SELECT SELECT_COMMANDS 
    FROM INFORMATION_SCHEMA.USER_STATISTICS 
    WHERE user = '...'; 

Für alle Benutzer:

SELECT user, SELECT_COMMANDS 
    FROM INFORMATION_SCHEMA.USER_STATISTICS; 
+0

Danke Rick. Zum Glück hatte ich einen Benutzer exklusiv für diese Datenbank, so dass ich dies mit Ihrer zweiten Abfrage finden konnte, zumindest ab Mariadb 10.0. Ich stelle nur für zukünftige Leser fest, dass viele mysql-Benutzer möglicherweise keine richtigen Berechtigungen für den Zugriff auf die INFORMATION_SCHEMA-Metatabelle haben und sich als ein anderer Benutzer anmelden oder diesem Benutzer Berechtigungen erteilen müssen. –

Verwandte Themen