Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/70.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
mysql.user表的引擎能否从MyISAM转换为InnoDb?_Mysql_Innodb_Myisam - Fatal编程技术网

mysql.user表的引擎能否从MyISAM转换为InnoDb?

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架构中的所有表,其中一些

我在我的生产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;。无论如何,不要相信存储引擎或编码等重要内容的默认设置。