MySQL – errno: 145

Tem coisa que ocorre em hora que não é para acontecer.

Imagine a situação: você por motivos extras (como manutenção na rede elétrica), precisa reiniciar o Servidor (Desligar e Ligar).

Ao iniciar você percebe que todos os serviços são inicializados normalmente durante o processo de carga do Sistema Operacional. Como não ocorreu nenhum erro, vamos, apenas para desencargo de consiência, testar os sistemas que são fornecidos pelo Servidor.

Começam os testes. O primeiro sistema está ok, o segundo sistema também está ok, o terceiro sistema também está ok, o quarto sistema: ERRO.

…Can’t open file: ‘TABELA.MYI’ (errno: 145)….

Somente uma tabela com erro, as demais tabelas do Banco funcionam sem maiores problemas. O que fazer???

Primeiramente vamos recorrer ao nosso amigo Google, geralmente ele tem uma resposta para as questões mais difíceis de serem explicadas. E dessa vez não foi diferente. 🙂

Encontrei um link, na qual houve o mesmo erro que eu estava tendo. Logo, vamos executar o comando que a dica para solucionar estava passando.

"mysqlcheck –all-databases –auto-repair"

(o que fiz fui trocar o parâmetro –all-databases pelo parâmetro -B database) 

Comando executado. Logo, o sistema voltou a funcionar. 

Incluí a resposta para esse erro (pelo menos eu consegui resolver o problema dessa forma), na seção FAQ/MySQL

8 ideias sobre “MySQL – errno: 145

  • Pessoal,

    estou com mensagens de erro no MYSQL.. sendo que ao executar o comando:

    ” mysqlcheck all-databases auto-repair ”

    aparece a seguinte informação:

    ” mysqlcheck: unknown option ‘–log-short-format’ ”

    nao consigo sair dessa!

  • Outra forma de corrigir.

    Galera quando tenho esse problema eu corrigo da seguinte forma:

    1 PARE O SERVIRO MYSQL

    #/ect/init.d/mysql stop

    2 entre no diretorio /var/lib/mysql

    # cd /var/lib/mysql

    3 liste o conteudo.
    # ls

    *Voce deve visualizar o diretório com o nome do seu banco de dados.
    Entre no mesmo

    Ex:
    cd pagamento

    # ls

    voce viu todas os aquivos da suas tabelas
    agora é só corrigilas:

    execute o comando
    mysqlcheck -B (NOMEDOBANCO) -auto-repair -p root

    Pronto !!! Agora inicie seu banco de dados e teste.

    Comigo sempre funciona.

    Abraços

  • Entaum pessoa, entrei no servidor……erro de ordem na linha de comando, mas coloco o -autorepair aparece a lista de todas as tabelas, ok na frente mas a msg continua na que está com problema, ou seja ela não está funcionando nem para reparar……obrigada pela ajuda…abraços

  • Melissa,

    faça o seguinte!

    em um prompt (àquela tela preta) execute o comando que te passei

    mysqlcheck –all-databases –auto-repair -u USUARIO -p

    vc pode trocar o parametro -all-databases pelo nome do banco de dados que esta a tabela corrompida.

    Para maiores informações sobre o comando mysqlcheck, execute:

    mysqlcheck –help

    Será exibida todas as opções possíveis que você poderá utilizar com o comando.

    Abraço,

    Boa Sorte 😉

  • Eu estou no servidor, mas marinheira de primeira viagem….ainda não me familiarizei com o ubuntu e mysql, esse interativivdade…mas vou pesquisar, e qaulquer coisa me dá uns toques…..bele?

  • Eu tambbém tive esse problema com o MySQL. A princípio, pelo menos o que eu consegui descobrir, foi que tinha uma tabela que havia sido “danificada”.

    Somente consegui resolver com o comando:
    mysqlcheck –all-databases –auto-repair

    Para maiores informações sobre esse comando procure no site do Mysql.

    Por acaso, você não tem acesso diretamente ao servidor ne?? Apenas por phpMysqladmin???

  • Ocorreu um erro no meu banco mysql “erro 145”, utilizando o phpmyadmin no momento de entrar no banco———————– MySQL said: Documentation
    #145 – Table ‘./banco/tabela’ is marked as crashed and should be repaired, o que fazer? pois ao fazer uma consulta ou atualizar ocorre o mesmo erro

Deixe uma resposta

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *