Jeg kom til dette spørgsmål ved at søge på "mysql alter table hanging" og synes svaret (i kommentarerne) burde dokumenteres.
Hvis du kører en MySQL-kommando (i dette tilfælde for at tilføje en kolonne), og den uventet hænger, f.eks. ikke på grund af størrelsen af dataene i tabellen, så tjek de andre processer, der kører mod databasen. Jeg lod forespørgslen køre, oprettede forbindelse til serveren med en anden klient og skrev
SHOW PROCESSLIST;
Min forespørgsel hang, og denne besked var i state
kolonne:
Waiting for table metadata lock
Jeg bemærkede, at jeg havde flere zombieforbindelser fra min maskine, og dræbte dem (KILL xxx
hvor xxx
er nummeret i Id
kolonne), og derefter afsluttede processen med det samme.