2011-06-11 10 views
13

Cuando se trata de MySQL y PHPMyAdmin, no soy un principiante, pero estoy más cerca de novato que de experto. Afortunadamente, lo que pido es factible, y que alguien me proporcionará una consulta SQL simple y de cortar y pegar para que suceda.¿Se puede ejecutar Alter Table Engine = InnoDB en varias tablas al mismo tiempo?

Necesito convertir alrededor de 9 tablas en cada una de 12 dbs de MyISAM a InnoDB, y espero poder hacer todas las tablas en una base de datos con una sola consulta en lugar de tener que hacer clic y esperar cada y cada tabla en PHPMyAdmin. Básicamente, ¿hay alguna manera de ejecutar "ALTER TABLE foo ENGINE = InnoDB" en varias tablas a la vez a través de una consulta ejecutada en PHPMyAdmin?

Respuesta

33
select concat('alter table ',table_name, ' engine = innodb;') 
from information_schema.tables 
where table_schema in ('db1','db2',....,'dbN') 

luego ejecute la salida de consulta.

Cuestiones relacionadas