Table错误is marked as crashed and last (automatic) repair failed

Table错误is marked as crashed and last (automatic) repair failed

错误分析:
此错误为表损坏,修复即可。一般原因为服务器突然断电,而有程序还在往表里写数据。或者表的数据很大。避免浪费时间去修表。注意服务器操作时停掉数据库。

解决办法:

首先进入数据库,执行命令 show processlist;查看正在对此表的操作,如果有repire 修复、 读表等相关进程kill 掉再修复。因有相关进程,修复的时候不会报错,但是发现修复完毕后,还是提示这个错误,即修复失败。

修复语句:

./myisamchk -c -r /data1/mariadb_data/databasename/**.MYI --tmpdir=/data1/tmp/ --sort_buffer_size=256M --key_buffer_size=256M --read_buffer_size=2M --write_buffer_size=2M

星号 × 代表表名称。在安装目录的 bin/ 下执行。

注意: 如果数据表很大,一定要加上 参数:否则执行一段时间后会出现如下错误

MySQL  myisamchk: error: myisam_sort_buffer_size is too small  
————————————————

原文链接:https://blog.csdn.net/u012675743/article/details/53447558


./myisamchk -c -r /data/mysql/shangcheng/ecs_sessions.MYI --tmpdir=/data/mysql/tmp/ --sort_buffer_size=256M --key_buffer_size=256M --read_buffer_size=2M --write_buffer_size=2M

posted @ 2020-01-06 09:54  walkersss  阅读(1979)  评论(0编辑  收藏  举报