最近两个最大的表,都有3个多G.频频出现
#145 - Table 'xxx' is ed as crashed and should be repaired 这样的错误。每次出现后,仅仅是repair table ... 了事。
但无法找到很好的解决方案,也不知道出错的原因,出现这样的问题,大概是哪里的问题呢?该如何解决呢?

解决方案 »

  1.   

    http://www.phpip.com/program/mysql/A62009906P/21882.html
    参考下
      

  2.   

    建立个任务,自动定期对索引文件(*.MYI)进行维护,相信会有效果
      

  3.   

    http://dev.mysql.com/doc/refman/5.1/zh/database-administration.html#disaster-prevention5.9. 备份与恢复
    5.9.1. 数据库备份
    5.9.2. 示例用备份与恢复策略
    5.9.3. 自动恢复
    5.9.4. 表维护和崩溃恢复
    5.9.5. myisamchk:MyISAM表维护实用工具
    5.9.6. 建立表维护计划

    5.9.7. 获取关于表的信息
      

  4.   

    告诉你一个比较彻底的。
    如果你的是MyISAM表,找块干净硬盘,或者干净分区(其实只要保证你的3G文件能够在一个连续的地址里面就行,最好之间不要有过多的碎片),把数据库直接拷贝过去,然后用优化表命令。
    不过,优化表命令时间会比较长,并且会锁表。最彻底的方法(未必可行),
    把数据都dump出来,找块干净硬盘,或者干净分区(其实只要保证你的3G文件能够在一个连续的地址里面就行,最好之间不要有过多的碎片)然后import进去。