如何重命名MySQL中的所有索引

Phy*_*yxx 5 mysql

我有一个MySQL数据库,其中索引的名称在表之间共享.这在MySQL中很好,因为索引名称只需要在表中是唯一的,而不是在数据库中.但我必须将此数据库导出到需要索引名称全局唯一的系统.

是否有一些命令或脚本可以运行以为索引分配唯一的名称?我不在乎它们是否是随机生成的.

Sat*_*h D 0

MySQL不支持ALTER TABLE重命名索引(或键,它是同义词)的语法。

你可以ALTER TABLE DROP KEYALTER TABLE ADD KEY

中没有ALTER INDEX命令MySQL。您只能DROP INDEX然后CREATE INDEX用新名称。