Lesen Sie mehr über Speicher-Engines .
MyISAM:
Die MyISAM Speicher-Engine in MySQL.
- Einfacher zu entwerfen und zu erstellen, daher besser für Anfänger geeignet. Keine Sorge um die Fremdbeziehungen zwischen Tabellen.
- Durch die einfachere Struktur insgesamt schneller als InnoDB, dadurch viel geringere Kosten für Server-Ressourcen. -- Stimmt meistens nicht mehr.
- Volltextindizierung. -- InnoDB hat es jetzt
- Besonders gut für leseintensive (ausgewählte) Tabellen. -- Stimmt meistens nicht mehr.
- Der Festplatten-Footprint ist 2x-3x kleiner als der von InnoDB. -- Ab Version 5.7 ist dies vielleicht der einzige wirkliche Vorteil von MyISAM.
InnoDB:
Die InnoDB Speicher-Engine in MySQL.
- Unterstützung für Transaktionen (gibt Ihnen Unterstützung für ACID ). Eigentum).
- Sperren auf Zeilenebene. Wenn Sie einen feinkörnigeren Sperrmechanismus haben, erhalten Sie eine höhere Parallelität im Vergleich zu beispielsweise MyISAM .
- Fremdschlüsselbeschränkungen. So können Sie die Datenbank die Integrität des Datenbankstatus und die Beziehungen zwischen Tabellen sicherstellen lassen.
- InnoDB ist widerstandsfähiger gegen Tabellenkorruption als MyISAM.
- Unterstützung eines großen Pufferpools für Daten und Indizes. MyISAM-Schlüsselpuffer ist nur für Indizes.
- MyISAM stagniert; Alle zukünftigen Erweiterungen werden in InnoDB enthalten sein. Dies wurde mit dem Rollout der Version 8.0 deutlich.
MyISAM-Einschränkungen:
- Keine Fremdschlüssel und kaskadierende Löschungen/Aktualisierungen
- Keine Transaktionsintegrität (ACID-Konformität)
- Keine Rollback-Fähigkeiten
- 4.284.867.296 Zeilenlimit (2^32) -- Dies ist der alte Standard . Das konfigurierbare Limit (für viele Versionen) war 2**56 Bytes.
- Maximal 64 Indizes pro Tabelle
InnoDB-Einschränkungen:
- Keine Volltextindizierung (Mysql-Version unter 5.6)
- Kann nicht für schnelles, schreibgeschütztes Komprimieren komprimiert werden (5.5.14 führte
ROW_FORMAT=COMPRESSED
ein ) - Sie können eine InnoDB-Tabelle nicht reparieren
Für ein kurzes Verständnis lesen Sie die folgenden Links:
- MySQL-Engines:InnoDB vs. MyISAM – Ein Vergleich der Vor- und Nachteile
- MySQL-Engines:MyISAM vs. InnoDB
- Was sind die Hauptunterschiede zwischen InnoDB und MyISAM?
- MyISAM versus InnoDB
- Was ist der Unterschied zwischen MyISAM und InnoDB?
- MySql:MyISAM vs. Inno DB!