深入理解重建索引

地址:http://www.cnblogs.com/Alight/p/4601003.html

 

1、检查是否需要重建索引:

check table 表名;

如果status是OK,那么不用重建索引。否则需要重建

 2、mysql重建索引:

repair table 表名

3、案例

mysql 版本:5.5.28
客户服务器托管的机房一直都有突然停电的问题,导致数据表损坏,目前来看没法彻底来解决这个问题
原用的 MyISAM 引擎,因为有好几百个表,就写了个脚本,在恢复供电之后来 check table 并 repair 损坏的 table 。检查速度还算可以,而且客户那边也可以自己在线操作!
后新加了一些功能使用的 InnoDB 引擎,可在 repair table 时候出现 

The storage engine for the table doesn't support repair

如何才能快速的 check 损坏的 InnoDB 引擎表,并快速修复数据

innodb要比myisam健壮很多 而且有自我修复的能力 
但是一旦innodb的数据文件损坏  只能找备份恢复

MySQL表损坏修复解决方案
 
innodb 从理论上文件因停电损坏的机率很小。它是先写LOG然后写数据。
mysql 默认引擎innodb 初探(二)

posted on 2018-11-07 20:56  腾飞的鹰  阅读(1202)  评论(0)    收藏  举报

导航