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

2022-01-15 00:00:00 mariadb mysql innodb myisam

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

I've installed MySQL 5.5 recently. I'm using InnoDB as the engine for all my databases. I noticed that the mysql database default and all of it's tables (user, db, etc...) are MyISAM. Is there any reason they cannot / should not be InnoDB? Does anyone know if MySQL requires the mysql db to be MyISAM?

推荐答案

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

Warning Do not convert MySQL system tables in the mysql database from MyISAM to InnoDB tables! This is an unsupported operation. If you do this, MySQL does not restart until you restore the old system tables from a backup or re-generate them with the mysql_install_db script.

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

相关文章