mysql8去掉了myisam,mysql8 参考手册--MyISAM表问题

MySQL用于存储数据的文件格式已经过广泛测试,但是在某些情况下,可能会导致数据库表损坏。下面的讨论描述了这种情况如何发生以及如何处理。

MyISAM表损坏

即使MyISAM表格式非常可靠(SQL语句对表所做的所有更改都在语句返回之前进行了写操作),但是如果发生以下任何事件,您仍然会损坏表:

1、mysqld的进程在写中间被杀害。

2、发生计算机意外关机(例如,计算机已关闭)。

3、硬件故障。

4、您正在使用外部程序(例如 myisamchk)来修改服务器正在同时修改的表。

5、MySQL或MyISAM 代码中的软件错误。

损坏的表的典型症状是:

从表中选择数据时,出现以下错误:

Incorrect key file for table: '...'. Try to repair it

查询找不到表中的行或返回不完整的结果。

您可以MyISAM使用该CHECK TABLE语句检查表的运行状况,并使用修复损坏的MyISAM表 REPAIR TABLE。当 mysqld未运行时,您也可以使用myisamchk命令检查或修复表。

如果表经常损坏,则应尝试确定为什么会发生这种情况。要知道的最重要的事情是表是否由于服务器崩溃而损坏。您可以通过restarted mysqld在错误日志中查找最近的消息来轻松验证这一点 。如果出现这样的消息,则表损坏很可能是服务器死机的结果。否则,可能会在正常操作期间发生损坏。这是一个错误。您应该尝试创建一个可再现的测试用例来演示该问题。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值