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的数据重建该表的方式修复


  • 相关阅读:
    Linq to Sql学习总结1
    SQL相关
    C#各种小知识点总结
    Ext.Net学习笔记
    ASP.NET MVC3入门学习总结
    leetcode-剑指67-OK
    leetcode-剑指44-OK
    leetcode-剑指51-OK
    leetcode-剑指32-III-OK
    leetcode-剑指49-OK
  • 原文地址:https://www.cnblogs.com/ungshow/p/1495031.html
Copyright © 2011-2022 走看看