Ich verwende AWS RDS Read Replica. Es gibt ständig Probleme mit den Memory Engine-Tabellen von Magento. Für Backup und Read Replicas liebt RDS InnoDB. Kann ich alle Tabellen sicher auf InnoDB umstellen?
Zusätzlich bekomme ich folgende Warnung von AWS:
DB-Instanz magento-monin-prod-db enthält MyISAM-Tabellen, die nicht nach InnoDB migriert wurden. Diese Tabellen können sich auf Ihre Fähigkeit auswirken, Wiederherstellungen zu bestimmten Zeitpunkten durchzuführen. Ziehen Sie in Betracht, diese Tabellen in InnoDB zu konvertieren. Weitere Informationen finden Sie unter http://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/Appendix.MySQL.CommonDBATasks.html#MySQL.CommonDBATasks.Tables
Plausible Antwort
Ich bin immer noch an Feedback interessiert. Ich werde dies als Antwort hinzufügen, wenn ich innerhalb der nächsten 24 Stunden keine Probleme finde. Die Schritte, die ich unten unternommen habe, scheinen bisher sicher zu sein. Meine größte Sorge galt den Memory Engine-Tabellen von Magento (Tabellen mit der Endung in_tmp) und den möglichen Auswirkungen auf die Indizierung.
Folgendes habe ich getan:
SELECT * FROM INFORMATION_SCHEMA.TABLES WHERE (ENGINE = 'Memory' OR ENGINE='MyIsam') AND TABLE_SCHEMA='magento_db'
- Für mich gab es hauptsächlich temporäre Indextabellen und Magento-Modultabellen, also nicht viele wichtige Kerntabellen, um die man sich Sorgen machen muss, und nur wenige Tabellen, die ich problemlos ausführen kann, wenn etwas den Fan trifft.
Für jeden zurückgegebenen Tisch habe ich ausgeführt:
Alter table {table-name} ENGINE=InnoDB;
Ich wäre nervös, dies zu versuchen, wenn keine Ihrer Tabellen InnoDB sind. Wie ich bereits sagte, gab es auf meiner Instanz nur wenige Kerntabellen, die geändert werden mussten.