Eu estava reparando esta tabela repentinamente, o servidor travou e, quando voltei, todas as tabelas estão ok, mas esta mostra 'em uso' e, quando tento reparar, ela não prossegue.
ERRO 144 - A tabela './extas_d47727/xzclf_ads' está marcada como travada e o último reparo (automático?) Falhou
O que posso fazer para repará-lo?
Respostas:
Se o seu processo MySQL estiver em execução, pare-o. No Debian:
Vá para a sua pasta de dados. No Debian:
Tente executar:
Se isso não funcionar, você pode tentar:
Você pode iniciar seu servidor MySQL novamente. No Debian:
fonte
/var/lib/mysql/<database>
e corrermyisamchk -r -v -f ./<table name>
.myisam_sort_buffer_size is too small
erro, então este comando funcionou para mim:myisamchk -r -v --sort_buffer_size=2G <table_name>
Tente executar a seguinte consulta:
Eu tive o mesmo problema e isso me resolveu o problema.
fonte
Se lhe der negação de permissão ao mover para / var / lib / mysql, use a seguinte solução
fonte
Eu precisava adicionar USE_FRM à instrução de reparo para fazê-la funcionar.
fonte
Eu tenho
myisamchk: error: myisam_sort_buffer_size is too small
como erro.A solução
fonte
Vá para
data_dir
e remova oYour_table.TMP
arquivo após reparar a<Your_table>
tabela.fonte
data_dir
?grep -r datadir /etc/mysql/
. Deve estar/var/lib/mysql
sob debian e ubuntu.Esta é uma solução 100%. Eu mesmo tentei.
myisamchk -r -v -f --sort_buffer_size = 128M --key_buffer_size = 128M / var / lib / mysql / databasename / tabloname
fonte
Tentei as opções nas respostas existentes, principalmente a marcada como correta, que não funcionou no meu cenário. No entanto, o que funcionou foi usar o phpMyAdmin. Selecione o banco de dados e, em seguida, selecione a tabela. No menu suspenso, selecione "Reparar tabela".
fonte