Mysql
 sql >> Base de données >  >> RDS >> Mysql

Redémarrez Mysql automatiquement lorsque Ubuntu sur la micro-instance EC2 le tue lorsqu'il manque de mémoire

L'arrêt brutal d'un serveur de base de données est un crash très grave. Vous devez éviter cela dans un système de production, car il risque de ne pas redémarrer proprement.

Le serveur de base de données est une ressource partagée et ne devrait presque jamais se terminer de manière imprévue en production. La seule chose qui devrait provoquer un arrêt imprévu est une panne matérielle ou électrique catastrophique. La plupart des serveurs de base de données de production correctement configurés subissent une interruption non planifiée une fois tous les dix ans ou moins fréquemment. Sérieusement.

Que faire ?

Corrigez votre configuration apache. Limitez le nombre de threads de travail et de processus qu'il peut utiliser, afin qu'il ne puisse pas se déchaîner. Apprenez à le faire. C'est vital. Voir ici :http://httpd.apache.org/docs/ current/mod/mpm_common.html#maxrequestworkers

Corrigez les défauts de votre application Web qui font que votre apache se déchaîne.

Si vous le pouvez, déplacez votre serveur mysqld vers une machine serveur différente d'Apache, afin que les deux ne se disputent pas les mêmes ressources matérielles.

Configurez votre mysqld pour limiter le nombre de connexions qu'il acceptera des threads de travail apache ou d'autres clients. Votre application Web gère probablement la situation où un thread de travail doit attendre une connexion. Vois ici. http://dev.mysql.com /doc/refman/5.0/en/server-system-variables.html#sysvar_max_connections

Êtes-vous sur une micro-instance EC2 ? Vous devez faire un réglage sérieux. Voir ici :http://ubuntuforums.org/showthread.php?t=1979049