Mysql
 sql >> Datenbank >  >> RDS >> Mysql

Behebung des Wartezeitlimits für die Sperre überschritten; Versuchen Sie, die Transaktion für eine festgefahrene Mysql-Tabelle neu zu starten?

Ich hatte ein ähnliches Problem und löste es, indem ich die laufenden Threads überprüfte. Um die laufenden Threads anzuzeigen, verwenden Sie den folgenden Befehl in der mysql-Befehlszeilenschnittstelle:

SHOW PROCESSLIST;

Es kann auch von phpMyAdmin gesendet werden, wenn Sie keinen Zugriff auf die mysql-Befehlszeilenschnittstelle haben.
Dies zeigt eine Liste von Threads mit entsprechenden IDs und Ausführungszeiten an, sodass Sie die Threads, die zu viel Zeit in Anspruch nehmen, KILLEN können auszuführen. In phpMyAdmin haben Sie eine Schaltfläche zum Stoppen von Threads mit KILL, wenn Sie die Befehlszeilenschnittstelle verwenden, verwenden Sie einfach den KILL-Befehl, gefolgt von der Thread-ID, wie im folgenden Beispiel:

KILL 115;

Dadurch wird die Verbindung für den entsprechenden Thread beendet.