mysql.user表的引擎能否从MyISAM转换为InnoDb?
我在我的生产MySQL数据库上运行了以下查询:mysql.user表的引擎能否从MyISAM转换为InnoDb?,mysql,innodb,myisam,Mysql,Innodb,Myisam,我在我的生产MySQL数据库上运行了以下查询: SELECT CONCAT('`', table_schema,'`.`', table_name, '`') AS schema_tables FROM information_schema.tables AS tb WHERE `ENGINE` = 'MyISAM' AND `TABLE_TYPE` = 'BASE TABLE' ORDER BY table_name DESC; 它返回了mysql架构中的所有表,其中一些
SELECT CONCAT('`', table_schema,'`.`', table_name, '`') AS schema_tables
FROM information_schema.tables AS tb
WHERE `ENGINE` = 'MyISAM'
AND `TABLE_TYPE` = 'BASE TABLE'
ORDER BY table_name DESC;
它返回了mysql架构中的所有表,其中一些是:
`mysql`.`user`
`mysql`.`time_zone_transition_type`
`mysql`.`time_zone_transition`
`mysql`.`time_zone_name`
`mysql`.`time_zone_leap_second`
`mysql`.`time_zone`
`mysql`.`tables_priv`
`mysql`.`servers`
`mysql`.`proxies_priv`
...
我的问题是:
1.这些可以安全地转换为innodb吗?
2.为什么他们首先在MyISAM引擎中?是我错改了还是他们默认了
服务器版本:5.6.22-log MySQL社区服务器GPL
PS:我知道InnoDb是5.6版的默认引擎,我从未运行过任何查询来转换为MyISAM。不,你不能
俗话说:
重要的
不要将MySQL数据库中的MySQL系统表(如user或host)转换为InnoDB类型。这是一个不受支持的操作。系统表必须始终为MyISAM类型
选择@@default\u storage\u engine;。无论如何,不要相信存储引擎或编码等重要内容的默认设置。