MySQL 返回:Got error 127 from table handler 毛虫的...

来源:百度文库 编辑:神马文学网 时间:2024/10/06 06:01:38
数据表的修复  
  日期:2002-01-01  
   
  注意:在修复表之前要靠被他们,注意备份,切记!  
   
  1.标准的表修复  
    a.试着用   --recover选项修复表,能加上   --quick选项试图只根据索引的内容进行修复,这样做不触及数据文件。  
        %   myisamchk   --recover   --quick   table_name  
        or    
        %   isamchk   --recover   --quick   table_name  
    b.假如难题还存在,在试试上一步命令,但是要忽略   --quick选项,这样允许修改数据文件。  
        %   myisamchk   --recover   table_name  
        or    
        %   isamchk   --recover   table_name  
    c.假如还不工作,试试   --safe-recover   修复办法。但这种办法比普通办法要慢,但能修复   --recover无法修复的难题。  
        %   myisamchk   --safe-recover   table_name  
        or    
        %   isamchk   --safe-recover   table_name  
  假如在myisamchk   or   isamchk   由于一个"can‘t   create   new   temp   file:file_name"的错误消息在任何一步停止,应该重复该命令并  
  加入   --force选项强迫清除临时文件。  
   
  2.假如标准修复失败这样做  
    a.定位到包含崩溃表的数据库目录中。  
    b.将该表的数据文件移到安全的地方。  
    c.调用mysql并通过执行下列语句重新创建新的空表,该语句使用表的描述文件  
        tbl_name.frm重新开始生成新的数据和索引文件。  
        mysql>delete   from   tbl_name;  
    d.退出mysql,将原始的数据文件移回到数据目录中,替换刚建的新的空文件。  
    e.在世这样用标准修复办法。  
   
  为了修复表的描述文件,可先从备份文件中恢复,然后再用标准修复办法。  
  假如由于某些原因没有备份,假如知道create   table   语句,仍然能恢复该文件:  
  a.定位到包含崩溃表的数据库目录中。  
  b.将该表的数据文件移到安全的地方。假如想使用用索引的话,还需要把索引文件移走。  
  c.调用mysql   发布create   table   语句重建表。  
  d.退出mysql,将原始的数据文件移回到数据目录中,替换刚才新建的数据文件。假如在第2不中移动了索引文件,则也要讲起移回到  
      数据库目录中。  
  e.在尝试标准表修复办法。  
   
  以上办法针对mysql有效,请大伙注意。