Desbloqueando uma tabela MySQL "travada": solução de problemas "Tempo limite de espera de bloqueio excedido"
Ao encontrar a mensagem "Tempo limite de espera de bloqueio excedido; tente reiniciar transaction" ao trabalhar com uma tabela InnoDB no MySQL, é provável que uma transação tenha travado. Veja como corrigir a tabela e resolver a transação travada:
1. Identifique a transação travada:
Execute o seguinte comando na interface de linha de comando do MySQL ou através do phpMyAdmin:
SHOW PROCESSLIST;
Isso exibirá uma lista de transações em execução tópicos. Procure threads com longo tempo de execução ou aqueles que estão em estado "Sleep". O ID do tópico correspondente será exibido na coluna "Id".
2. Encerre o thread travado:
Depois que o thread travado for identificado, encerre-o usando o seguinte comando na interface da linha de comando:
KILL;
Substitua
3. Reinicie a transação (opcional):
Se a transação ainda estiver ativa, reinicie-a para liberar quaisquer bloqueios que ela possa estar segurando. Você pode fazer isso executando o seguinte comando:
START TRANSACTION; COMMIT;
4. Descartar o índice (se aplicável):
Se você já tentou descartar um índice na tabela afetada e ele falhou devido ao bloqueio, tente descartá-lo novamente após encerrar o encadeamento travado e reiniciar a transação .
ALTER TABLEDROP INDEX ;
Seguindo estas etapas, você pode desbloquear a tabela travada e resolver o erro "Tempo limite de espera de bloqueio excedido". Lembre-se de verificar os threads em execução regularmente para identificar e encerrar quaisquer possíveis transações travadas para evitar problemas semelhantes no futuro.
Isenção de responsabilidade: Todos os recursos fornecidos são parcialmente provenientes da Internet. Se houver qualquer violação de seus direitos autorais ou outros direitos e interesses, explique os motivos detalhados e forneça prova de direitos autorais ou direitos e interesses e envie-a para o e-mail: [email protected]. Nós cuidaremos disso para você o mais rápido possível.
Copyright© 2022 湘ICP备2022001581号-3