2017-08-26 6 views

Antwort

1

Die MyISAM-Speicher-Engine deutlich Phased werden geführt wird verstehen können, und ich erwarte, dass es schließlich aus MySQL entfernt werden.

Wenn Sie weiterhin auf eine neuere Version von MySQL aktualisieren möchten, sollten Sie Ihre Datenbanken auf nie MyISAM verwenden.

MyISAM bietet keine Unterstützung für eines der folgenden:

  • ACID-Eigenschaften
  • Fremdschlüssel
  • Transaktionen
  • gruppierten Index
  • Sperren auf Zeilenebene
  • gleichzeitige Aktualisierungen
  • Unfallwiederherstellung
  • Daten-Caching (nur Indizes werden zwischengespeichert; Daten werden durch die Dateisystem-)
  • Partitionierung (in MySQL 8.0)
  • vom MySQL-Engineering-Team

MyISAM empfängt keine Verbesserungen im Cache gespeichert, soweit ich weiß.

MyISAM wird immer noch für die Grant-Tabellen im mysql.*-Schema ab MySQL 5.7 verwendet, aber in 8.0 sind diese Tabellen alle in InnoDB gespeichert.

Bei meinem letzten Projekt verwendete ich MyISAM nur für einen Tisch. Die Tabelle speicherte 5 Milliarden Zeilen, und sie musste auf einem Server mit begrenztem Speicherplatz ohne Plan oder Budget für das Upgrade gespeichert werden. MyISAM speicherte diese Tabelle auf der Hälfte des Speicherplatzes als InnoDB (Ihr Fall könnte je nach Datentypen, Indizes und anderen Faktoren ein anderes Speicherverhältnis erhalten). Mit MyISAM konnte ich diese Tabelle auf dem Server speichern, bis sie aktualisiert werden konnte. Mit InnoDB wäre die Tabelle zu groß gewesen.

Verwandte Themen