Mysql
 sql >> Datenbank >  >> RDS >> Mysql

Unter welchen Umständen möchten Sie, dass Rails NICHT wieder mit MYSQL verbunden wird?

Wie Sie in der Frage angemerkt haben, besteht ein möglicher Nebeneffekt der automatischen Wiederverbindung (falls auf Anweisungsebene ausgeführt) darin, dass sie nicht transaktionssicher ist.

Die MySQL Dokumentation gibt ausdrücklich an, dass die automatische Wiederverbindungsfunktion Transaktionen betrifft:

Anwendungen, die nicht dafür geschrieben wurden, könnten leicht kaputt gehen. Die Dokumentation listet auch eine Reihe anderer Nebeneffekte auf, die durch die automatische Wiederverbindungsfunktion verursacht werden, die alle dazu führen können, dass Anwendungen, die nicht geschrieben wurden, um das Verhalten vorherzusehen, nicht korrekt funktionieren oder fehlschlagen.

Wenn die Verbindung zur Datenbank plötzlich unterbrochen wird, gibt der Server Sperren, die von der Verbindung gehalten wurden, möglicherweise nicht ordnungsgemäß frei, so dass es sich anhört, als ob eine Anwendung in einigen Fällen blockiert werden könnte:

Bearbeiten:Der MySQL-Dokumentationslink in der Antwort scheint jetzt nicht zu existieren. Die aktualisierte Dokumentation finden Sie hier