Closed. This question is off-topic。它目前不接受答案。
想改进这个问题吗?Update the question所以堆栈溢出的值小于aa>。
两年前关闭。
最近,我们的服务器意外关闭,下次我试图启动mysql时,它出现了错误。我们没有任何数据备份,所以我们只是将数据文件夹复制到某个安全位置。我有ib日志文件和ib数据文件,以及所有带有frm和ibd文件的数据库名。如何恢复数据库?
我可以在MySQL Workbench中看到我的数据库和表名,但是当我查询表时,它说表不存在。

最佳答案

在一个非常类似的案例中,这些步骤帮助了我:
在my.cnf配置中设置innodb_force_recovery = 1以强制启动InnoDB。别忘了重新启动服务。MySQL现在应该正在运行。
使用mysqldump创建SQL转储
(可选)使用pt-show-grants额外转储赠款
重新安装数据库,或删除ibdata和ibu日志文件(请参见https://dba.stackexchange.com/questions/23361/innodb-force-recovery-when-innodb-corruption
导入两个SQL转储:实际的数据库转储和授予转储

10-04 10:34
查看更多