zoukankan      html  css  js  c++  java
  • MySQL 坏表处理

    MySQL数据表坏掉了。应用程序连接数据库提到如下的异常:

    1 java.sql.SQLException: Can't open file: 'kq_attTemp.MYI'. (errno: 145)
    2         at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:2921)
    3         at com.mysql.jdbc.MysqlIO.sendCommand(MysqlIO.java:1570)
    4         at com.mysql.jdbc.MysqlIO.sqlQueryDirect(MysqlIO.java:1665)
    5         at com.mysql.jdbc.Connection.execSQL(Connection.java:2972)
    6         at com.mysql.jdbc.Connection.execSQL(Connection.java:2902)
    7         at com.mysql.jdbc.Statement.executeQuery(Statement.java:822

    解决方法:
    进入MySQL,使用MySQL修复命令修复该表。
    CHECK TABLE `music`//检查表
    REPAIR TABLE `music`//修复表
    OPTIMIZE TABLE `music`//优化表

    使用第二条修复命令就解决了问题。但是表却坏得莫名其妙的……
    以下是其它网友提供的解决方案,但是不保证一定有效:
    用命令myisamchk可以检查并修复MyISAM表
    如:
    myisamchk music
    myisamchk 
    --recover music

    如果是InnoDB表,可以在mysql
    >提示符下用
    CHECK TABLE来检测是否有问题
    如果有问题,可以用mysqldump导出,drop table, 用dump的数据重建该表的方式修复


  • 相关阅读:
    洛古模拟赛--星空
    bzoj4476 [Jsoi2015]送礼物
    矩阵乘法总结
    bzoj 3167 SAO
    codeforces 671D
    10.28
    noip前集训
    10.2晚 模拟继续
    10.2 考试
    10.1 国庆 考试
  • 原文地址:https://www.cnblogs.com/ungshow/p/1495031.html
Copyright © 2011-2022 走看看