Die abrupte Beendigung eines Datenbankservers ist ein sehr schwerwiegender Absturz. Sie müssen dies in einem Produktionssystem vermeiden, da es möglicherweise nicht sauber neu gestartet wird.
Der Datenbankserver ist eine freigegebene Ressource und sollte in der Produktion fast nie ungeplant beendet werden. Das einzige, was zu einem ungeplanten Abbruch führen sollte, ist ein katastrophaler Hardware- oder Stromausfall. Die meisten ordnungsgemäß konfigurierten Produktionsdatenbankserver werden einmal alle zehn Jahre oder seltener außerplanmäßig beendet. Ernst.
Was ist zu tun?
Korrigieren Sie Ihre Apache-Konfiguration. Begrenzen Sie die Anzahl der Worker-Threads und Prozesse, die verwendet werden können, damit sie nicht in den Status "Unerlaubt" umgewandelt werden können. Erfahren Sie, wie Sie dies tun. Es ist wichtig. Siehe hier: http://httpd.apache.org/docs/current/mod/mpm_common.html#maxrequestworkers
Beheben Sie die Fehler in Ihrer Web-App, die Ihren Apache laufen lassen.
Wenn Sie können, verschieben Sie Ihren mysqld-Server auf einen anderen Server-Computer von Apache, so dass die beiden nicht für die gleichen Hardwareressourcen konkurrieren.
Konfigurieren Sie Ihre mysqld, um die Anzahl der Verbindungen zu begrenzen, die von Apache-Worker-Threads oder anderen Clients akzeptiert werden. Ihre Webanwendung behandelt wahrscheinlich die Situation, in der ein Worker-Thread auf eine Verbindung warten muss. Siehe hier. http://dev.mysql.com/doc/refman/5.0/en/server-system-variables.html#sysvar_max_connections
Sind Sie auf einer EC2-Mikroinstanz? Sie müssen eine ernsthafte Abstimmung vornehmen. Siehe hier: http://ubuntuforums.org/showthread.php?t=1979049
Danke Ollie! Ja, Sie haben recht, ich versuche eine EC2-Mikroinstanz zu quetschen. Dann werde ich Apache und MySQL weiter abstimmen und anfangen, zu vergrößern und zu verkleinern. Aber gibt es eine Möglichkeit zu erkennen, dass mysql ging und es automatisch neu startet? Nur für den Fall, dass es passiert, wenn ich den Server nicht kontrolliere und ich ihn nicht mehr optimiert habe. – Alex