• 云途科技成立于2010年 - 专注全球跨境电商服务器租赁托管!
  • 帮助中心

    您可以通过下方搜索框快速查找您想知道的问题

    Incorrect key file for table mysql表损坏的修复方法

      in  数据库      Tags: 

    今天查询mysql的时候,报这样的错误,Incorrect key file for table './tg/dxad.MYI'; try to repair it. mysql表损坏的情况是很少见的,下面的方法适用于myisam,其他存储引擎,不知道能不能这样修复。

    1,myisamchk修改表

    [root@localhost tg]# myisamchk -of ./dxad.MYI     //修复第一步
    - recovering (with keycache) MyISAM-table './dxad.MYI'
    Data records: 12597637
    Found block that points outside data file at 1630252996
    Data records: 12597456
    [root@localhost tg]# myisamchk -r ./dxad.MYI     //修复第二步
    - recovering (with sort) MyISAM-table './dxad.MYI'
    Data records: 12597456
    - Fixing index 1
    [root@localhost tg]# myisamchk ./dxad.MYI     //修复第三步
    
    Checking MyISAM file: ./dxad.MYI
    Data records: 12597456   Deleted blocks:       0
    - check file-size
    - check record delete-chain
    - check key delete-chain
    - check index reference
    - check data record references index: 1
    - check record links

    myisamchk带的参数,可以用man看一下。操作后重新启动一下数据库。

    [root@localhost tg]# /etc/init.d/mysqld restart

    这样操作后,还是有问题,会报 #145 - Table "XXXXX" is marked as crashed and should be repaired。如下图:

    myisamchk 修复表后报的错误

    myisamchk 修复表后报的错误

    2,命令行下repair修复表

    mysql> repair table dxad;  //dxad是表名

    如下图

    命令行下repair修复表成功

    命令行下repair修复表成功

    到这儿,myisam表损坏就修复好了。



    • 外贸虚拟主机

      1GB硬盘

      2个独立站点

      1000M带宽

      不限制流量

      美国外贸专用虚拟主机,cPanel面板,每天远程备份.
      服务器配置:2*E5 32核,96GB 内存,4*2TB 硬盘 RAID10 阵列.

      ¥180/年

    • 美国/荷兰外贸VPS

      2核CPU

      1G内存

      30硬盘

      10M带宽

      美国/荷兰外贸云服务器,专注外贸服务器行业12年.
      服务器配置:2*E5 32核,96GB 内存,4*2TB 硬盘 RAID10 阵列.

      ¥99/月

    • 全球外贸服务器

      8核CPU

      32G内存

      1TB硬盘

      1000M带宽

      已部署数据中心:美国洛杉矶/亚特兰大、荷兰、加拿大、英国伦敦、德国、拉脱维亚、瑞典、爱沙尼亚
      自有机柜(全球九大数据中心),稳定在线率:99.9%

      ¥999/月 原价1380

    7*24小时 在线提交工单

    如果您的问题没有得到解决,推荐您在线提交工单,我们的客服人员会第一时间为您解决问题

    展开