MySQL系统数据库表可以转换成InnoDB吗?

Posted

技术标签:

【中文标题】MySQL系统数据库表可以转换成InnoDB吗?【英文标题】:Can the MySQL system database tables be converted to InnoDB? 【发布时间】:2012-10-05 20:27:16 【问题描述】:

我最近安装了 mysql 5.5。我使用InnoDB 作为我所有数据库的引擎。我注意到mysql 数据库默认值及其所有表(用户、数据库等)都是MyISAM。他们有什么理由不能/不应该是InnoDB?有谁知道 MySQL 是否需要 mysql db 为 MyISAM

【问题讨论】:

【参考方案1】:

警告 不要将 mysql 数据库中的 MySQL 系统表从 MyISAM 转换为 InnoDB 表!这是不受支持的操作。如果这样做,MySQL 不会重新启动,直到您从备份中恢复旧系统表或使用 mysql_install_db 脚本重新生成它们。

http://dev.mysql.com/doc/refman/5.0/en/innodb-restrictions.html

【讨论】:

当然。直接弄乱任何系统表可能是个坏主意。 不错。好东西我问了 :) 想到有这么大的方法,用户可以轻松地射中自己的脚,真是太可怕了。 权力带来责任:)

以上是关于MySQL系统数据库表可以转换成InnoDB吗?的主要内容,如果未能解决你的问题,请参考以下文章

mysql myisam转innodb的2种方法

mysql 学习 - InnoDB的表空间

Mysql MyISAM数据库批量转换表引擎为Innodb

mysql转换引擎的方法

MySQL 分区知识点

Alter Table Engine = InnoDB 可以同时在多个表上运行吗?