I min procesliste ser jeg en langvarig proces. Der er ingen forespørgsel, bare kommandoen “Feltliste” med en tom info-kolonne. Det har ventet næsten 20 minutter på en tabel metadatalås på en ikke specificeret tabel.
Googling efter “MySQL-kommandofeltliste” har ikke returneret noget nyttigt. Kan nogen fortælle mig, hvad denne kommando forsøger at gøre og hvad kan have forårsaget det?
Brug af MySQL 5.6.35 på et CentOS 6-felt
Kommentarer
- Læs meta.stackoverflow.com/a/285557/124486 og det accepterede svar
Svar
Se efter alle linjer i PROCESSLIST
med en tid højere end den ene (1188). Det sandsynligvis angiver skurken. Ejeren af begge rækker kan give en anelse.
En “metadatalås” involverer noget andet end enkle forespørgsler – muligvis ALTER TABLE
eller LOCK TABLES
(som for mysqldump
) osv.
“Feltliste” lyder som sondering information_schema
for kolonnerne i tabellen, men jeg kunne tage fejl.
En anden mulighed er, at der er en åben transaktion, der venter på at være COMMITted
. (Og det er “mellem” udsagn, når PROCESSLIST
blev grebet.)
SHOW OPEN TABLES;
kan give et nyt fingerpeg.
SHOW OPEN TABLES;