Anteriormente, em todos os bancos de dados criados, eu uso:
mysql -u root -p
CREATE DATABASE dbname CHARACTER SET utf8 COLLATE utf8_bin;
GRANT ALL ON dbname.* TO 'dbuser'@'localhost';
e depois use o banco de dados sem pensar no MyISAM ou no InnoDB
Como saber o mecanismo de armazenamento usado de um banco de dados?
SHOW TABLE
para cada tabela no banco de dados)?Use o comando 'show engine' para visualizar o mecanismo padrão ativo
Adicione default-storage-engine = InnoDB na seção [mysqld] do arquivo my.cnf para que o mecanismo padrão esteja ativo.
Use o comando 'show create table table_name' para visualizar o mecanismo padrão na tabela.
fonte
SHOW ENGINE
dá-me o erro 1064 (42000).show engines;
Esta consulta lista todas as tabelas do InnoDB e seus bancos de dados no MySQL:
Você também pode listar todas as tabelas e seus mecanismos de armazenamento:
fonte
ERROR 1146 (42S02): Table 'information_scheme.tables' doesn't exist
(no MySQL 5.6.37)Para obter o nome do mecanismo para uma tabela específica
Para mudar o mecanismo
fonte