it-swarm.dev

Gdzie mogę znaleźć wolny dziennik mysql?

Tak jak mówi tytuł, gdzie mogę go zobaczyć?

Czy istnieją jakieś opcje konfiguracji (np. Ile ms określi, czy zapytanie jest wolne, czy nie)?

26
poelinca

Możesz go znaleźć w domyślnym katalogu, w zależności od instalacji. Na przykład w moim Red Hat jest to/var/log/mysql /

Czas zapytania to czas w sekundach, po upływie którego powinien rozpocząć się zapis. Można to zrobić podczas uruchamiania i podczas uruchamiania.

log-slow-queries = /var/log/mysql/mysql-slow.log

long_query_time = 1

22
David Hall

W MySQL: show global variables like '%slow%';

Aktualizacja: oto link do instrukcji: tekst link

26
SteveHarville

Są to odpowiednie opcje (i ustawienia), które ogólnie mam/używam we wszystkich moich my.cnfs, aby rejestrować wolne zapytania:

log_output=FILE
slow_query_log=1
slow_query_log_file=/var/log/mysql/mysql.slow 
long_query_time=0.001 
log-queries-not-using-indexes=0

Zauważ, że dla long_query_time ,

Począwszy od MySQL 5.1.21 ... podczas logowania do pliku obsługiwana jest rozdzielczość mikrosekund.

7
Riedsio

Wyszukaj plik konfiguracyjny mysqld (zwykle /etc/my.cnf)

W twojej muszli:

grep slow /etc/my.cnf
3
randomx

Oto także kwestia do rozważenia:

Jeśli skorzystasz z opcji

log-output=TABLE

w pliku /etc/my.cnf wyszukaj, że wolny dziennik jest tabelą opartą na silniku pamięci masowej CSV, umieszczoną we wszystkich miejscach schematu mysql.

Wpływa to również na ogólny dziennik, gdy go włączysz.

2
RolandoMySQLDBA