I ran the following query on my production MySQL database:
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;
It returned all the tables from mysql schema, some of them are:
`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`
...
My queries are:
1. Can these be converted to innodb safely?
2. Why were they in MyISAM engine in the first place? Did I change it by mistake or were they default?
Server version: 5.6.22-log MySQL Community Server (GPL)
PS: I know InnoDb is default engine from 5.6 and I never ran any query to convert to MyISAM.
SELECT @@default_storage_engine;
. Whatever, don't trust default settings for important stuff like storage engine or encoding. - Álvaro González