sql >> Databáze >  >> RDS >> Mysql

MySQL ALTER TABLE se zablokuje

K této otázce jsem se dostal hledáním „mysql alter table hanging“ a myslím si, že odpověď (v komentářích) by měla být zdokumentována.

Pokud spouštíte příkaz MySQL (v tomto případě pro přidání sloupce) a neočekávaně visí, např. ne kvůli velikosti dat v tabulce, pak zkontrolujte ostatní procesy běžící proti databázi. Nechal jsem dotaz spuštěný, připojil jsem se k serveru s jiným klientem a napsal

SHOW PROCESSLIST;

Můj dotaz visel a tato zpráva byla ve state sloupec:

Waiting for table metadata lock

Všiml jsem si, že mám několik připojení k zombie ze svého počítače, zabil jsem je (KILL xxx kde xxx je číslo v Id sloupec) a poté proces okamžitě skončil.



  1. Pohled na DBCC CHECKCONSTRAINTS a I/O

  2. Odstraňte problém při pokusu o vytvoření velkého modelu IMDB

  3. Jak nainstalovat SQL Server Manager Studio (SSMS) - SQL Server / TSQL výukový program, část 1

  4. Příklad replikace Oracle Streams krok za krokem