mysql Informações incorretas no arquivo: erro (corrompido)

2

Recentemente, sofri uma queda de energia em um dos meus servidores de monitoramento no escritório. O resultado dessa interrupção causou a corrupção de algumas tabelas do banco de dados.

Eu consertei com sucesso 3-4 tabelas usando a opção "use_frm" no entanto ainda existem 3 que parecem estar mal corrompidas e não estão respondendo ao comando mysql REPAIR (com ou sem use_frm)

mysql> REPAIR TABLE poller_item;
+-------------------+--------+----------+----------------------------------------------       ------------+
| Table             | Op     | Msg_type | Msg_text                                                    |
+-------------------+--------+----------+-------------------------------------------------  ---------+
| cacti.poller_item | repair | Error    | Incorrect information in file:    './cacti/poller_item.frm' |
| cacti.poller_item | repair | error    | Corrupt                                                      |
+-------------------+--------+----------+-------------------------------------------------  ---------+

Neste cenário, existe alguma outra maneira de reparar uma mesa?

Versão do MySQL

mysql  Ver 14.14 Distrib 5.1.49, for debian-linux-gnu (x86_64) using readline 6.1
    
por Nick M. 29.08.2012 / 16:22

2 respostas

3
Incorrect information in file:    './cacti/poller_item.frm'
O arquivo

.frm armazena o formato da tabela. Tente isto:

  • Pare o MySQL
  • Faça o backup de poller_item.frm , poller_item.MYD , poller_item.MYI
  • Solte a tabela poller_item
  • Inicie o MySQL
  • Recriar a tabela poller_item usando a instrução CREATE TABLE em cacti.sql (usa a versão correspondente que você está executando)
  • Pare o MySQL
  • Copie o poller_item.MYD , poller_item.MYI para o datadir
  • Inicie o MySQL novamente
por 29.08.2012 / 17:03
0

faça o backup primeiro e tente o MYISAMCHK (1):

myisamchk --recover tbl
myisamchk --save-recover tbl
    
por 29.08.2012 / 16:41

Tags