mysql 表修复 1033错误
查看表报错
show index from table;
ERROR 1033 (HY000): Incorrect information in file: './mysql_db/table.frm'
查看表引擎依然报错
alter table table engine=myisam;
ERROR 1033 (HY000): Incorrect information in file: './mysql_db/table.frm'
####
# myisamchk -r -q table
- check record delete-chain
- recovering (with sort) MyISAM-table 'table '
Data records: 76205
- Fixing index 1
- Fixing index 2
- Fixing index 3
- Fixing index 4
重启后就可以正常识别到了
简单安全的修复
注释:如果想更快地进行修复,当运行myisamchk 时,你应将sort_buffer_size和Key_buffer_size 变量的值设置为可用内存的大约25% 。
首先,试试myisamchk -r -q tbl_name(-r -q 意味着“快速恢复模式”) 。这将试图不接触数据文件来修复索引文件。如果数据文件包含它应有的一切内容和指向数据文件内正确地点的删除连接,这应该管用并且表可被修复,开始修复下一张表。否则,执行下列过程:
在继续前对数据文件进行备份。
使用myisamchk -r tbl_name(-r 意味着“恢复模式”) 。这将从数据文件中删除不正确的记录和已被删除的记录并重建索引文件。
如果前面的步骤失败,使用myisamchk --safe-recover tbl_name 安全恢复模式使用一个老的恢复方法,处理常规恢复模式不行的少数情况(但是更慢)。