这应该是很容易的... 我有一个包含大约20个表的数据库,全部都是MyISAM类型。我想要将它们转换为InnoDB,所以我执行了以下语句:
alter table xxxx engine = InnoDB;
作为结果,我得到
ERROR 1050 (42S01): Table './yyy/xxx' already exists
我尝试了几个表格,以为所有的表格都会发生同样的事情,直到我遇到两个正确转换的表格。SHOW TABLE STATUS确认了正确的转换。奇怪的是,其他几个表格有非常相似或相等的结构,但没有转换。
MySQL版本为5.5.27...我尝试通过phpMyAdmin和直接使用mysql命令。结果相同。
注:我找到了下面指示的主题,并进行了一些测试: -我对表格进行了mysqlchk -没问题。 -建议删除表格,表格消失, -然后修复表格报告找不到表格(这是合乎逻辑的)。 -如果我从备份中恢复表格,则出现相同的错误。
可能存在一个并行的InnoDB表格,我看不到吗?