Sprawdź, czy obecnie przechwytuję ruch za pomocą dziennika ogólnego:
SELECT @@general_log; -- 1 if capturing, 0 if not
-- for me, a 1. This means I have been capturing (good for development. Poor idea for Production)
SELECT @@general_log_file; -- file name for General Log if capturing.
-- for me: GeneralLogBegin_20160803_1420.log
SELECT @@datadir; -- the location of the general_log, and other logs
-- for me: C:\ProgramData\MySQL\MySQL Server 5.6\Data\
Teraz wyłączam przechwytywanie dziennika ogólnego poniżej, ponieważ mój przechwytywał:
SET GLOBAL general_log=0; -- stop logging
Przenoszę plik dziennika do katalogu kopii zapasowej, zmieniając jego nazwę na GL_from_20160803_1420_to_20160806_1559
Zawartość i zakres dat i godzin przechwytywania, które zawiera powyższy plik, jest mało niejednoznaczny.
Ustaw nową nazwę przechwytywania pliku dziennika (rozpocznij segment dla nazwy pliku)
SET GLOBAL general_log_file='GeneralLogBegin_20160806_1559.log';
SET GLOBAL general_log=1; -- Start logging again
Uruchom moją aplikację, która łączy się z serwerem, a dziennik ogólny zawiera:
KawałekA:
160806 16:08:37 170 Connect [email protected] on stackoverflow
170 Query SHOW VARIABLES
170 Query SELECT TIMEDIFF(NOW(), UTC_TIMESTAMP())
170 Query SHOW COLLATION
170 Query SET NAMES latin1
170 Query SET character_set_results=NULL
170 Init DB my_db_name
Uwaga:być może trzeba będzie to zrobić
mysqladmin -u root -p flush-log
(proszony o podanie hasła), aby opróżnić logi z pamięci podręcznej do pliku. Przy okazji, Wzniosły tekst jest świetny do automatycznego odświeżania aktualnie załadowanego pliku tekstowego. Takich jak plik dziennika.
Więc mój ChunkA
powyżej znajduje się końcówka połączenia przychodzącego nowego połączenia. Jest sterowana przez polecenia używanego programu, cokolwiek to może być. To jest przed poleceniami programu, do których jesteś przyzwyczajony i kodujesz. Jeśli ciągle tworzysz nowe połączenia, wykonujesz napisany przez siebie kod i rozłączasz się, to wszystko jest częścią bagażu. Nie masz kontroli nad ich optymalizacją w żaden prosty sposób.
Należy rozważyć wyłączenie dziennika zapytań ogólnych w środowisku produkcyjnym. I tylko włączenie go podczas ustawień środowiska debugowania i testowania. Włączenie go zwiększa niepotrzebne obciążenie stosu.