如果MySQL服务器突然断电、异常关闭,可能会导致表损坏,无法读取表数据。这时就可以用到MySQL自带的两个工具进行修复,myisamchk和mysqlcheck。 myisamchk:只能修复myisam表,需要停止数据库 常用参数: -f –force 强制修复,覆盖老的临时文件,一般不使用 -r –recover 恢复模式 -q –quik 快速恢复 -a –analyze 分析表 -o –safe-recover 老的恢复模式,如果-r无法修复,可以使用此参数试试 -F –fast 只检查没有正常关闭的表 快速修复xxx数据库: # cd /var/lib/mysql/xxx # myisamchk -r -q *.MYI mysqlcheck:myisam和innodb表都可以用,不需要停止数据库,如修复单个表,可在数据库后面添加表名,以空格分割 常用参数: -a –all-databases 检查所有的库 -r –repair 修复表 -c –check 检查表,默认选项 -a –analyze 分析表 -o –optimize 优化表 -q –quik 最快检查或修复表 -F –fast 只检查没有正常关闭的表 快速修复xxx数据库: mysqlcheck -r -q -uroot -pxxx xxx (责任编辑:IT) |