了解MySQL引擎与数据库类型?

时间:2010-11-12 16:01:46

标签: mysql database

所以我是数据库MySql和数据库配置期的新手。我最初使用默认的Innodb引擎部署了MySQl,然后通过MySQL工作台创建了一个包含单个表的数据库。

但是,我决定改用MyISAM。如果我将默认引擎更改为MyISAM,我是否已将更改用于使用MyISAM,或者是否必须重新创建数据库并更改默认引擎设置?

基本上,我创建了一个默认引擎类型为Innodb的数据库,并希望为我的项目运行MyISAM数据库。

非常感谢任何帮助或澄清。

3 个答案:

答案 0 :(得分:2)

您可以使用

将表格类型更改为MyISAM
ALTER TABLE MyTable ENGINE=MYISAM

请注意,如果您在表上定义了任何外键,则会显示错误消息。

此外,如果表很大,可能需要一段时间,因为MySQL所做的是创建所选类型的新表,将旧表中的所有数据复制到其中,然后删除旧表。

编辑:如果更改默认引擎,则尚未更改已创建的任何表的工具。您必须明确更改这些表。

答案 1 :(得分:1)

引擎是每个表,而不是每个数据库。

在更改默认存储引擎之前创建的任何表都需要转换为新类型。

除非您手动更改旧表,否则只有新表将使用新的默认类型。

您可以使用

更改存储引擎
ALTER TABLE TableName ENGINE=MyISAM

答案 2 :(得分:0)

您需要更改您创建的表,以便在MyISAM上运行。

  

ALTER TABLE MyTableName ENGINE =   MYISAM;