OS: Ubuntu 20.04
Database: MariaDB 10.3
Når den generelle log GENERAL_LOG er slået til, bliver samtlige forespørgsler til databaseserveren logget.
Logningen kan ikke begrænses til en enkelt database da variablen er global, og det kan have stor indflydelse på ydeevnen og ret hurtigt resultere i en meget stor logfil. Derfor er denne log ikke aktiveret som standard, og man slår den normalt kun til midlertidigt.
Det er derfor ekstremt praktisk at den kan aktiveres og deaktiveres uden at genstarte systemet.
Du kan nemt se om den er slået til eller fra:
1 2 3 4 5 6 7 |
MariaDB [(none)]> show global variables like '%general_log%' \G; *************************** 1. row *************************** Variable_name: general_log Value: OFF *************************** 2. row *************************** Variable_name: general_log_file Value: butler.log |
Medmindre du har ændret GENERAL_LOG_FILE vil den som standard logge til [hostnavn].log.
Det kan godt snyde fordi man automatisk tror den ligger i /var/log/mysql, men det gør den altså IKKE. Den ligger i /var/lib/mysql.
Således kan du slå den til og fra:
1 2 |
MariaDB [(none)]> SET GLOBAL GENERAL_LOG=ON; MariaDB [(none)]> SET GLOBAL GENERAL_LOG=OFF; |
Når du har sat den til ON kan du udføre det der skal logges i et script, applikation eller lign. der kommunikerer med systemet. Herefter slå du den fra igen.