O arquivo ibdata1 contém as informações do tablespace e outros metadados sobre seu(s) banco(s) de dados Mysql.
Você pode tentar usar o
innodb_force_recovery = 1
até innodb_force_recovery = 6
para ver se isso corrige o problema. Tente alterar isso em seu my.cnf
(my.ini
para windows) e tente reiniciar seu servidor mysql novamente. Se você conseguir iniciar o Mysql usando o sinalizador de recuperação, seu banco de dados estará em modo somente leitura. Você deve fazer um mysqldump dos dados, parar o mysql, reinstalar de novo, criar seu banco de dados novamente e importar de volta os dados.
Aqui está um link para mais informações sobre recuperação innodb dev .mysql .
Se você usa linux...
Outra opção mais complexa é usar o kit de ferramentas de recuperação de percona. Isso irá realinhar seus tablespaces. Embora, por experiência, seja um pouco desafiador navegar e leve um pouco de tempo para implementar se você for um novato.
No entanto, akuzminsky o criador do kit de ferramentas (que legal isso!) mencionou que ele fez melhorias significativas no kit de ferramentas.
Link para baixar o kit de ferramentas Percona.com
Link com um passo a passo de chriSQL .
Link para o site de akuzinsky TwinDB .
A menos que esses dados sejam de missão crítica, eu apenas reverteria para o backup de 2 semanas antes. A quantidade de tempo e esforço que você pode acabar investindo na recuperação desses dados pode ser o benefício.