我一直在phpMyAdmin上将我的表一个一个地切换到InnoDB
。每张桌子最多花了30秒。
一张桌子卡住了15分钟(仍在继续)。
在mysql进程列表中,它显示:
状态:
copy to tmp table
信息:
ALTER TABLE `table` auto_increment = 2446976 ROW_FORMAT = DYNAMIC
为什么这个过程需要这么长时间?
我可以杀死这个过程吗?或者我应该放手吧?该表很热,因此有些行正在等待插入。
该表在varchar(30)
列上有唯一索引。这可能是问题吗?
答案 0 :(得分:0)
需要很长时间,因为MySQL需要使用新结构创建新表,然后将数据从旧表(MyISAM)复制到新表(InnoDB)。复制完所有记录后,它将替换表格。
我不建议将其删除,因为回滚过程(新表是InnoDB)需要更长时间。等到它完成。 ALTER完成后,表将是InnoDB状态良好。