Suche…


Grundlegende Konvertierung

ALTER TABLE foo ENGINE=InnoDB;

Dadurch wird die Tabelle konvertiert, es werden jedoch keine Unterschiede zwischen den Engines berücksichtigt. Die meisten Unterschiede spielen keine Rolle, besonders für kleine Tische. Bei belebten Tischen sollten jedoch andere Überlegungen in Betracht gezogen werden. Überlegungen zur Konvertierung

Alle Tabellen in einer Datenbank konvertieren

Um alle Tabellen in einer Datenbank zu konvertieren, verwenden Sie Folgendes:

SET @DB_NAME = DATABASE();

SELECT  CONCAT('ALTER TABLE `', table_name, '` ENGINE=InnoDB;') AS sql_statements
FROM    information_schema.tables
WHERE   table_schema = @DB_NAME
AND     `ENGINE` = 'MyISAM'
AND     `TABLE_TYPE` = 'BASE TABLE';

HINWEIS: Sie sollten mit Ihrer Datenbank verbunden sein, damit die Funktion DATABASE() funktioniert. Andernfalls wird NULL . Dies gilt vor allem für den Standard-MySQL-Client, der mit dem Server geliefert wird, da eine Verbindung ohne Angabe einer Datenbank möglich ist.

Führen Sie diese SQL-Anweisung aus, um alle MyISAM Tabellen in Ihrer Datenbank abzurufen.

Kopieren Sie schließlich die Ausgabe und führen Sie SQL-Abfragen daraus aus.



Modified text is an extract of the original Stack Overflow Documentation
Lizenziert unter CC BY-SA 3.0
Nicht angeschlossen an Stack Overflow