2011-04-16 16 views
6

Chciałbym zobaczyć "ogólny dziennik zapytań" z pliku dziennika innodb, więc czy jest ktoś, kto wie, jak wyświetlić/odczytać te dzienniki zapytań?Jak odczytać plik dziennika innodb?

Wypróbowałem narzędzie administracyjne MySQL, wyświetla tylko dziennik błędów, a dziennik zapytań jest wyłączony.

+0

Znalazłem ten artykuł, który rozwiązał mój problem [link] (http://www.mydigitallife.info/how-to-read-mysql-binary-log-files-binlog-with) –

Odpowiedz

0

Kwerendy rejestrowania to duże przeciążenie wydajności, dlatego domyślnie jest wyłączone. Jeśli chcesz zapytań zalogować następnie ustawić zmienną logowania w my.cnf

log=/tmp/mysql.log 

To nie jest zalecane, jeśli aplikacja jest na żywo, ponieważ będzie ona zwalniać naprawdę ciężko, a użytkownicy mogą uzyskać 500 lub limitu czasu połączenia błędów. Po zakończeniu debugowania skomentuj to.

+1

Faktycznie mam dziennik files, ib_logfile0, ale muszę zobaczyć ostatnie, powiedzmy, 4 dniowe zapytania. Tak więc moje pytanie brzmi: jak je zobaczyć –

+0

BTW dziękuję, Ashwini ... –

6

Odpowiedź brzmi, że użytkownik nie może.

Pliki ib_logfile * nie zawierają kwerend, lecz 512-bajtowe instrukcje wyrównania zmian wprowadzonych przez zapytania. Np

[przestrzenno-id] [PAGE-id] [Gdzie-w-strony do modyfikowania] [Ładunek]

  • przestrzeni ID jest numer pliku (np. ibdata1 = numer pliku zero).
  • Identyfikator strony to strona tego pliku. Wszystkie strony mają 16K.
+0

Morgan, czy masz źródło tej informacji? – Leonardo

+0

Chcę zobaczyć uruchamiane zapytania/zestaw instrukcji wysyłanych do mysql przy użyciu ib_logfiles i ibdata1. jak to możliwe? dowolny parser lub narzędzie do ekstrakcji? – kanchan