sql >> Databasteknik >  >> RDS >> Mysql

Hur man konverterar MAIN mysql-databas till InnoDB från MyIsam

BYT INTE MOTORN FÖR SYSTEMTABELLER

MySQL har ännu inte ändrat koden tillräckligt för att tillåta mysql.* att vara något annat än MyISAM. MySQL 8.0 gör förändringen genom att förvandla tabellerna ("dataordboken") till en InnoDB-tabell, med radikalt annorlunda struktur och möjligheter.

Eftersom du är på 5.7.23 är du bara ett (stort) steg från 8.0.xx. Överväg att uppgradera.

Replikering fungerar med MyISAM-tabeller, men klustringsreplikering gör det inte -- Galera och gruppreplikering hanterar dessa MyISAM-tabeller på andra sätt. Se dokumentationen om vad som händer med GRANT , CREATE USER , etc. Använd inte UPDATE och INSERT för att manipulera de inloggningsrelaterade tabellerna.

(Författaren till denna fråga verkar ha åtgärdat problemet genom att avinstallera ett plugin.)




  1. Välj den senaste raden med GROUP BY i MySQL

  2. Sanering av MySQL-användarparametrar

  3. SQLAlchemy StaleDataError vid radering av objekt som infogats via ORM sqlalchemy.orm.exc.StaleDataError

  4. Laddar UTF-8-kodad dump till MySQL