gpt4 book ai didi

mysql 无法删除损坏的 innodb 表

转载 作者:行者123 更新时间:2023-11-29 03:08:58 31 4
gpt4 key购买 nike

所以我正在处理一个 MySQL 服务器,它用完了磁盘空间并且大部分 InnoDB 表当然已经损坏了。我试图删除并重新创建损坏的表,但 MySQL 不允许我对它们做任何事情,包括修复。如您所见,乐趣无穷无尽。应该注意的是,似乎只有这个表会导致这些错误中的任何一个。

mysql> drop table myschema.mytable;
ERROR 2013 (HY000): Lost connection to MySQL server during query

mysql> repair table myschema.mytable;
#results in the following
| myschema.mytable | repair | Error | Out of memory; restart server and try again (needed 2 bytes) |
| myschema.mytable | repair | Error | Incorrect information in file: './myschema/mytable.frm' |
| myschema.mytable | repair | error | Corrupt

mysql> describe myschema.mytable;
ERROR 1037 (HY001): Out of memory; restart server and try again (needed 2 bytes)

如果我停止服务器并将表的 .frm 和 ibd 文件移开,然后重新启动,我无法重新创建它,因为服务器说它已经存在(即使在 INFORMATION_SCHEMA 中看不到它).在这种状态下,我也不能删除它,因为服务器说它不存在。

我一直在寻找答案,但在这一点上,但我不是 DBA,所以我迷路了。我不知道如何修复这张 table ,也不知道如何摆脱它。

有什么建议吗?

最佳答案

我不确定此时我的回答是否对您有用,但我想它会对其他人有所帮助。

这个问题并不少见。这种损坏的原因可能多种多样,但解决方法很简单。

您必须转储您的表并重新创建它。

我们可以通过在my.cnf文件中设置innodb_force_recovery=1参数,然后重启mysql来实现。

有关此参数的更多信息,请阅读此链接。 http://dev.mysql.com/doc/refman/5.7/en/forcing-innodb-recovery.html

一旦您的问题得到解决,您就可以删除该参数。

干杯!

关于mysql 无法删除损坏的 innodb 表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11110400/

31 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com