Execute CHECK TABLE
na tabela.
Por alguma razão, não é a primeira coisa que penso ao diagnosticar erros de tabela muito estranhos. Eu tive um problema ao fazer um order by
eu acabaria com apenas um registro. Explain
disse que eu deveria ter 28 linhas, se eu tirar o order by
eu tenho 28 linhas. Bem, o problema foi a corrupção da tabela, mas ao contrário de alguns erros em que o MySQL sai direto e diz que sua tabela está corrompida, eu não sabia até que chequei.
Eu estava apenas imaginando se há uma lista, ou poderíamos fazer uma lista de todas as vezes em que um banco de dados MySQL está corrompido, mas você pode não necessariamente saber que está.
Execute CHECK TABLE
na tabela.
Erros fatais ao tentar ler / gravar em uma tabela são a evidência na maioria dos casos em que me deparei.
Além disso, EXPLAIN
fornece apenas um número estimado de linhas, portanto, eu não consideraria necessariamente uma saída EXPLAIN
com um número inesperado de linhas lidas / retornadas como uma indicação de corrupção da tabela.
Tags mysql corruption