Heim  >  Artikel  >  Datenbank  >  Beispiel-Tutorial zur Konvertierung von myisam in innodb in MySQL

Beispiel-Tutorial zur Konvertierung von myisam in innodb in MySQL

零下一度
零下一度Original
2017-06-17 16:56:371140Durchsuche

Um Myisam in Innodb zu konvertieren, müssen Sie die Speicher-Engine der Tabelle ändern. Wenn Sie Myisam nicht gemäß der Standardmethode in Innodb ändern, kann dies zu Datenbankschäden und Datenverlust führen Schauen Sie sich die richtige Myisam-Konvertierung an.

<script>ec(2);</script>

Hier finden Sie eine kurze Einführung in die Unterschiede und Konvertierungsmethoden zwischen den beiden:

MyISAM: MyISAM ist die Standard-Datenbankspeicher-Engine für Versionen vor MySQL5.5. MYISAM bietet Hochgeschwindigkeitsspeicherung und -abruf sowie Volltextsuchfunktionen und eignet sich für Anwendungen mit häufigen Abfragen wie Data Warehouses. Es unterstützt jedoch keine Transaktionen oder Fremdschlüssel. Ein wichtiger Fehler des MyISAM-Formats besteht darin, dass Daten nach einer Beschädigung der Tabelle nicht wiederhergestellt werden können.

InnoDB: InnoDB ist die Standard-Datenbankspeicher-Engine von MySQL Version 5.5. InnoDB wurde jedoch von Oracle übernommen. Falcon, eine neue von MySQL entwickelte Speicher-Engine, wird in MySQL-Version 6.0 eingeführt. InnoDB ist transaktionssicher und verfügt über Commit-, Rollback- und Crash-Recovery-Funktionen. Im Vergleich zur MyISAM-Speicher-Engine schreibt InnoDB jedoch weniger effizient und benötigt mehr Speicherplatz, um Daten und Indizes beizubehalten. Dennoch bietet InnoDB Unterstützung für Transaktionen und Fremdschlüssel, die beide in der MyISAM-Engine nicht verfügbar sind.

MyISAM eignet sich für: (1) Durchführung vieler Zählberechnungen; (2) Einfügungen sind selten und Abfragen sind sehr häufig;
InnoDB eignet sich für: (1) Die Anforderungen an die Zuverlässigkeit sind relativ hoch oder es sind Transaktionen erforderlich. (2) Tabellenaktualisierungen und -abfragen sind relativ häufig und die Wahrscheinlichkeit einer Tabellensperre ist relativ hoch. (4) Server mit besserer Leistung, wie z. B. separate Datenbankserver, wie Alibaba Clouds Relationale Datenbank RDS, empfehlen die InnoDB-Engine.

MySQL bietet im Allgemeinen eine Vielzahl von Speicher-Engines, die durch Ausführen des folgenden Befehls angezeigt werden können:

Geben Sie zuerst den MySQL--Befehlszeilenmodus

ein Sehen Sie sich an, welchen Speicher MySQL bereitstellt:
MySQL> Show Engines;

Sehen Sie sich die aktuelle Standard-Speicher-Engine von MySQL an:
MySQL> Show Variables like '%storage_engine%';

Query wpsql Bibliothek
mysql> use wpsql; Gibt die aktuell von der Tabelle verwendete Speicher-Engine an):

mysql> show create table wp_posts;


Ändern Sie die wp_posts-Tabelle in die InnoDB-Speicher-Engine (Sie können auch Verwenden Sie diesen Befehl, um InnoDB durch MyISAM zu ersetzen:

mysql> ALTER TABLE wp_posts ENGINE=INNODB;

Wenn Sie die Speicher-Engine der gesamten Datenbanktabelle ändern möchten, müssen Sie normalerweise eine Tabelle nach der anderen ändern ist relativ umständlich. Sie können zuerst die Datenbank exportieren, SQL abrufen und alle MyISAM durch INNODB ersetzen und dann
die Datenbank importieren

.


Nachdem die Konvertierung abgeschlossen ist, starten Sie MySQL neu
> Dienst mysqld restart

Das obige ist der detaillierte Inhalt vonBeispiel-Tutorial zur Konvertierung von myisam in innodb in MySQL. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn