将表从 MyISAM 转换为 INNODB

发布于 07-29 13:45 字数 252 浏览 4 评论 0原文

我只是想将表从 MyISAM 转换为 INNODB。 这是为了使用 testopia 进行 bugzilla 升级。

这个简单的命令失败了。 ALTER TABLE 表名 TYPE = INNODB;

错误 1214 (HY000):使用的表类型不支持 FULLTEXT 索引

我知道它不支持 FULLTEXT 索引,但我希望它进行转换。 在转换之前我是否必须删除表上的全文索引? 有没有办法查询它们并将它们全部删除?

I am simply trying to convert a table from MyISAM to INNODB. This is for a bugzilla upgrade with testopia.

This simple command fails. ALTER TABLE table_name TYPE = INNODB;

ERROR 1214 (HY000): The used table type doesn't support FULLTEXT indexes

I know it does not support FULLTEXT indexes, never the less I want it to convert. Would I have to drop the fulltext indexes on the table before conversion? Is there a way to query for them and drop them all?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

紫南2024-08-05 13:45:52

首先,查看您的 CREATE TABLE 语句:

SHOW CREATE TABLE tablename

它将向您显示所有全文索引,如下所示:

…,
FULLTEXT KEY key_name (column_list),
…

删除所有这些键:

ALTER TABLE tablename DROP INDEX key_name;
…

,然后转换:

ALTER TABLE tablename ENGINE=InnoDB;

First, see your CREATE TABLE statement:

SHOW CREATE TABLE tablename

It will show you all your fulltext indexes like this:

…,
FULLTEXT KEY key_name (column_list),
…

Drop all these keys:

ALTER TABLE tablename DROP INDEX key_name;
…

, then convert:

ALTER TABLE tablename ENGINE=InnoDB;
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文