我有一个MYSQL MYISAM表,其大小约为7GB,并具有很多索引。该表昨天损坏了,我的MYSQL修复现在已经工作了12多个小时。
我想知道MYSQL修复实际上需要多长时间? (由于正在运行修复,我目前无法确切获得行数和确切大小)。
我使用的变量是:
| myisam_max_sort_file_size | 9223372036853727232 |
| myisam_mmap_size | 18446744073709551615 |
| myisam_recover_options | FORCE |
| myisam_repair_threads | 1 |
| myisam_sort_buffer_size | 268435456
| read_buffer_size | 67108864 |
| read_only | OFF |
| read_rnd_buffer_size | 4194304
由于使用了GODADDY托管主机,因此无法更改任何全局变量。
从状态上看,维修始终是“通过分类维修”。 还有什么其他方法可以加快此修复过程?
谢谢
我还尝试了从2天的备份还原数据库(到新数据库),在过去5个小时中,该数据库也卡在同一张表的“使用keycache修复”上。
我尝试了mysqlcheck和REPAIR TABLE,而不是myisamchk,因为我无法访问/ var / lib / mysql中的特定数据库文件夹,这会导致权限被拒绝错误。以及myisamchk空命令会导致找不到命令。
答案 0 :(得分:1)
需要几分钟。如果12小时后仍未完成,则可能挂起了,永远也无法完成。
MyISAM十年来还没有真正维护过,很可能您遇到了错误。如果您可以使用原始数据库文件,那么使用myisamchk
可能会有更好的机会。