Mysql
 sql >> Baza danych >  >> RDS >> Mysql

MySQL ALTER TABLE zawiesza się

Dotarłem do tego pytania, wyszukując „mysql alter table hanging” i myślę, że odpowiedź (w komentarzach) powinna być udokumentowana.

Jeśli uruchamiasz polecenie MySQL (w tym przypadku, aby dodać kolumnę) i nieoczekiwanie się zawiesza, np. nie ze względu na rozmiar danych w tabeli, sprawdź inne procesy działające w bazie danych. Zostawiłem zapytanie uruchomione, połączyłem się z serwerem z innym klientem i wpisałem

SHOW PROCESSLIST;

Moje zapytanie zawieszało się, a ta wiadomość była w state kolumna:

Waiting for table metadata lock

Zauważyłem, że mam kilka połączeń zombie z mojego komputera, zabiłem je (KILL xxx gdzie xxx to numer w Id kolumna), a następnie proces zakończył się natychmiast.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. PHP, MySQL, PDO Transactions - Czy kod wewnątrz bloku try zatrzymuje się na commit()?

  2. Eksportowanie danych MYSQL do Excela/CSV przez php

  3. Zmienianie kolumny tabeli Mysql, aby uwzględniała wielkość liter

  4. Jak utworzyć użytkownika w MySQL

  5. Zamów MySQL przed Grupuj według