Lokalizacja dziennika błędów?


15

Czy MySQL zapisuje plik dziennika? Jeśli tak, jaka jest ścieżka (w Ubuntu / Linux)?

Odpowiedzi:


11
  • Dziennik ogólny - wszystkie zapytania - patrz ZMIENNY general_log
  • Slow log - zapytania wolniejsze niż long_query_time-slow_query_log_file
  • Binlog - do replikacji i tworzenia kopii zapasowych - log_bin_basename
  • Dziennik przekazywania - również do replikacji
  • ogólne błędy - mysqld.err
  • start / stop - mysql.log(niezbyt interesujące) -log_error
  • Dziennik ponownych InnoDB - iblog*

Zobacz zmienną basediri datadirdomyślną lokalizację dla wielu dzienników

Niektóre dzienniki są włączane / wyłączane przez inne ZMIENNE. Niektóre są zapisywane w pliku lub w tabeli.


3

Dzienniki MySQL są określane przez zmienne globalne, takie jak:

  • log_error dla dziennika komunikatów o błędach;
  • general_log_filedla ogólnego pliku dziennika zapytań (jeśli włączony przez general_log);
  • slow_query_log_filedla pliku dziennika powolnego zapytania (jeśli włączone przez slow_query_log);

Aby zobaczyć ustawienia i lokalizacje dzienników, uruchom następujące polecenie powłoki:

mysql -se "SHOW VARIABLES" | grep -e log_error -e general_log -e slow_query_log

Dziękuję @kenorb na /programming//a/37685324/470749


2

Tak, MySQL zapisuje plik dziennika.

Jego ścieżka jest /var/log/mysql.logzdefiniowana w log_errorzmiennej config.

Istnieje również plik dziennika błędów /var/log/mysql.err


2

Poza dziennikiem błędów w systemie Windows żaden dziennik MySQL nie jest włączony. Ma to na celu maksymalizację zasobów serwera dla bazy danych. Z tego powodu wskazane jest aktywowanie ich w razie potrzeby.

Może to również utrudnić ustalenie, które dzienniki są włączone w danym momencie. Z tego powodu lubię mieć wszystkie moje zmienne config w jednym miejscu, aby móc je szybko wyszukać. Istnieje kilka narzędzi GUI, które są do tego odpowiednie. Osobiście używam Navicat dla MySQL i Navicat Premium .

Oba mają narzędzie do monitorowania, które zawiera kartę ze wszystkimi zmiennymi serwera na jednej obszernej liście.

Zmienne serwera general_log i general_log_file w narzędziu Navicat Server Monitor

Z poważaniem!


Niestety, ustawi to wartość tylko do następnego uruchomienia. OTOH, Dziennik Ogólny to spory dysk, więc ogólnie dobrze jest go wyłączyć zaraz po uzyskaniu potrzebnych informacji. (Inne dzienniki można prawdopodobnie pozostawić WŁĄCZONE.)
— Rick James

1

Uruchom poniżej polecenia na terminalu, aby znaleźć dokładną ścieżkę:

 mysqladmin variables | grep log_error

1

Pliki dziennika zazwyczaj znajdują się w /var/log/. Pliki dziennika serwera MySQL są zwykle identyfikowane przez mysql.nameOfLogFile.


1

Trochę późno tutaj

Bieżącą lokalizację pliku dziennika można znaleźć w MYSQL, sprawdzając zmienne globalne.

Na przykład poniżej pokaże, czy twój dziennik_ogólny jest włączony, czy wyłączony, a lokalizacja pliku_ogólny_log w twoim systemie.

SHOW GLOBAL VARIABLES LIKE '%general%';
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.