ALTER TABLE语句始终不能结束,登录MYSQL查看show processlist;发现,ALTER TABLE语句在“Repair with keycache”状态。导入mysql数据的时候,出现Repair by sorting的错误,数据一直卡住,无法继续导入

如果出现Repair with keycache时,说明tmp空间不够了....这时MySQL性能极低,又不能冒然kill掉进程,所以耐心等待操作完成吧。
而内存足够的情况下,这种过程应该是提示Repair by sorting
查看内存
free -m

google之,发现是mysql配置的问题,于是按照网络的建议,修改了如下配置
修改my.cnf的部分参数:

myisam_sort_buffer_size = 1024M
tmp_table_size = 256M

tmpdir = /data/tmp/sql
myisam_max_sort_file_size=20G

重启数据库,再重新导入
查看processlist,很快表创建完成。