Da uno script ho inviato una query come questa migliaia di volte al mio database locale:
update some_table set some_column = some_value
Ho dimenticato di aggiungere la parte where, quindi la stessa colonna è stata impostata sullo stesso valore per tutte le righe nella tabella e questo è stato fatto migliaia di volte e la colonna è stata indicizzata, quindi l'indice corrispondente è stato probabilmente aggiornato troppe volte .
Ho notato che qualcosa non andava, perché ci è voluto troppo tempo, quindi ho ucciso la sceneggiatura. Ho anche riavviato il mio computer da allora, ma qualcosa si è bloccato nella tabella, perché le query semplici richiedono molto tempo per l'esecuzione e quando provo a eliminare l'indice rilevante non riesce con questo messaggio:
Lock wait timeout exceeded; try restarting transaction
È una tabella innodb, quindi la transazione bloccata è probabilmente implicita. Come posso risolvere questa tabella e rimuovere la transazione bloccata da essa?
SHOW FULL PROCESSLIST
?