MySQL服务器因断电、异常关闭等导致表损坏,无法读取表数据的时候,如何进行修复?
时间:2019-01-05 22:52 来源:未知 作者:IT
如果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)
如果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) |