首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >MySQL MyISAM损坏表,如何恢复?

MySQL MyISAM损坏表,如何恢复?
EN

Server Fault用户
提问于 2014-02-26 03:06:42
回答 1查看 2.2K关注 0票数 0

我有一个损坏的MySQL MyISAM表。它第一次出现在我的mysql日志中是:

代码语言:javascript
复制
[ERROR] /usr/sbin/mysqld: Table './mydb/mytable' is marked as crashed 
and last (automatic?) repair failed

然后我在上面运行了CHECK TABLE,在翻滚了一个多小时之后,我得到了以下信息:

代码语言:javascript
复制
+--------------+-------+----------+----------------------------------------------------------+
| Table        | Op    | Msg_type | Msg_text                                                 |
+--------------+-------+----------+----------------------------------------------------------+
| mydb.mytable | check | warning  | Table is marked as crashed and last repair failed        |
| mydb.mytable | check | warning  | 5 clients are using or haven't closed the table properly |
| mydb.mytable | check | warning  | Size of indexfile is: 215237632      Should be: 4096     |
| mydb.mytable | check | error    | Record-count is not ok; is 4212263   Should be: 0        |
| mydb.mytable | check | warning  | Found 48 deleted space.   Should be 0                    |
| mydb.mytable | check | warning  | Found 1 deleted blocks       Should be: 0                |
| mydb.mytable | check | warning  | Found 8362327 key parts. Should be: 0                    |
| mydb.mytable | check | error    | Corrupt                                                  |
+--------------+-------+----------+----------------------------------------------------------+

这一切是否表明这张桌子走得太远了,无法挽救呢?还是REPAIR TABLE还能工作?或者是否有其他选项可以在不替换数据的情况下修复此表?我首先问,因为这张桌子对我的系统来说是相当大的,我有一种感觉,它将需要一段很长的时间才能知道修理是否有效。

EN

回答 1

Server Fault用户

发布于 2014-02-26 04:35:14

无论如何,我继续用REPAIR TABLE,认为如果桌子已经走得太远了,我就没有什么可失去的了。谢天谢地,它成功了!桌子已恢复正常工作。

票数 1
EN
页面原文内容由Server Fault提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://serverfault.com/questions/578318

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档