damian.1923
18.05.2015, 13:32:50
Witam,
na serwerze lokalnym (Linux Mint Debian Edition, MySQL 5.5, PHP 5.5) mamy uruchamianych wiele zadań cyklicznych tzw. cron-ów odpalających php-cli, do tego działa kilkadziesiąt przeróżnych pojedynczych skryptów i interfejsów w ramach intranetu,
coś regularnie powoduje zawieszenia bazy MySQL,
serwer nie odpowiada aż do momentu ręcznego restartu,
często wtedy pochłania 100% CPU, ale nie zawsze
jak najepiej zdiangozować co powoduje zawieszkę?
(jest kilka baz, kilkaset tabel, wyłącznie MyISAM, zapytania są bardzo złożone)
pozdrawiam,
Damian J.
damian.1923
19.05.2015, 09:32:26
OK. były włączone, nie spodziewałem się że będzie zapisywał zdarzenia które nie doszły do skutku,
oto pierwsze 2 wpisy z polecenia mysqldumpslow:
Count: 3 Time=906.95s (2720s) Lock=0.00s (0s) Rows=0.0 (0), mysql-goliat[mysql-goliat]@localhost
TRUNCATE TABLE ***********.***********
Count: 10 Time=27.60s (276s) Lock=0.00s (0s) Rows=0.6 (6), mysql-damian[mysql-damian]@localhost
SELECT ***********
dlaczego truncate wykonuje się tak długo?
podsumowanie tabeli, którą próbował czyścić:
MyISAM utf8_general_ci
rozmiar danych 200 012
rozmiar indeksów 102 400
wolne miejsce 0
liczba rekodów 4 177
OK. tabela była źle stworzona, bez kolumny z id,
coś jednak nadal jest nie tak z tą bazą bo powinna działać sprawniej, w każdym razie temat można chyba zamknąć.
Dziękuję i pozdrawiam.