mysql repair table导致数据丢失的解决方法
在本地测试机上,MySQL 5.1.43,MyISAM引擎,执行repair table的时候,导致数据丢失,特此记录,以前在MySQL5.0.32版本也遇到过同样的问题,所以在repair table前一定要备份。
这个也是MySQL官方承认的bug,
http://bugs.mysql.com/bug.php?id=10437,
http://bugs.mysql.com/bug.php?id=1804
MySQL手册上也指出来了:
MySQL5.0 和MySQL5.1 ,
遇到同样的问题,我们该怎么规避这件事情呢?
使用myisamchk --safe-recover
牛人给的推荐:OPTIMIZE LOCAL TABLE tablename; 这个命令的好处是对MyISAM和INNODB都起作用。
经过测试MyISAM表遭到破坏后OPTIMIZE LOCAL TABLE tablename;是修复不了的,还是使用myisamchk --safe-recover 当然不要忘了备份。
您可能感兴趣的文章:
mysql repair table导致数据丢失的解决方法
掉电导致mysql innodb #145 错误解决解决
修复MySQL的MyISAM表命令check table用法
解决Lost connection to MySQL server during query错误方法
mysql主从配置的三个错误及解决方法(图文)
mysql数据文件损坏后的修复方法
mysql导入导出数据时中文乱码的解决办法
mysql load data infile (40w数据 3-5秒导入mysql)
mysql 重新建立索引的方法
mysql 重命名数据库的方法示例