Magento-Datenbank bei domainFactory importieren

Als Hoster empfehlen wir gern domainFactory, wir haben mit denen nur gute Erfahrungen gemacht. Auch unsere eigene Website läuft bei dF. Wenn wir Magento verwenden, haben wir in der Vergangenheit allerdings Performance-Probleme beim Import von MySQL-Datenbanken festgestellt. Der Import eines MySQL-Dumps dauerte deutlich länger als bei anderen Hostern. Nach einiger Recherche fanden wir heraus: Das Zusammenspiel des Dateisystems der Datenbankserver und der Eigenschaften der Engine InnoDB, die von Magento verwendet wird, ist ein Performance-Killer.

Der langen Rede kurzer Sinn – folgende Zeile an der Anfang der Dump-Datei schreiben, und dem Import beim Rennen zusehen:

SET LOCAL innodb_flush_log_at_trx_commit=2;

Standardmäßig ist der Parameter innodb_flush_log_at_trx_commit auf den Wert 1 gesetzt. In dem Fall wird der Transaktions-Log nach jedem Commit auf die Festplatte geschrieben. Da Plattenzugriffe sehr langsam sind, kostet dies reichlich Geschwindigkeit. Und da domainFactory als Dateisystem auf ext4 setzt, welches jeden Schreibvorgang überprüft, potenziert sich das Problem. Wird diese Option auf 2 gesetzt, dann werden die Commits im Cache zwischengespeichert und das Schreiben auf die Festplatte auf 1 Mal pro Sekunde limitiert.