MySQL: скрипт массового преобразования для Table Engine - PullRequest
0 голосов
/ 05 февраля 2011

Я пытаюсь выяснить, как преобразовать en mass из механизма таблиц базы данных A в механизм таблиц B (в данном случае из MyISAM в InnoDB).Я знаю, что могу сделать это для отдельных таблиц, используя MySQL, но мне нужен скрипт или программа, которая может выполнять преобразование в массовом порядке.У кого-нибудь есть идеи?

* РЕДАКТИРОВАТЬ * Я бы предпочел SQL-запрос, который мог бы использовать для этого, без использования php, если это возможно.

1 Ответ

4 голосов
/ 05 февраля 2011

В псевдокоде с использованием таблиц information_schema :

$rows = "SELECT TABLE_NAME 
    FROM INFORMATION_SCHEMA.TABLES 
    WHERE TABLE_SCHEMA = 'yourDBName'
        AND ENGINE LIKE 'engineA'";
foreach ($rows as $table) {
    $query = 'ALTER TABLE '.$table.' ENGINE = engineB';
}
...