[mysql] too many connections

too many connections [mysql] - SQL/NoSQL - Programmation

Marsh Posté le 19-07-2002 à 21:14:51    

hello,  
 
Aujourd'hui, on s'est pris plein de too many connections avec environ une 20aine de personnes onlines, hier on avait environ 45 personnes onlines, et pas d'erreur :??:
 
D'après les comments, il s'agirait d'un bug mysql.
http://www.mysql.com/doc/T/o/Too_many_connections.html
 
Joce a eu le meme problème avec HFR http://forum.hardware.fr/forum2.ph [...] h=&subcat=
 
 
vous ne savez pas comment faire pour corriger ca ?
J'ai fais Recharger mysql avec phpmyadmin, mais ca n'a rien changé :(  
 
merci

Reply

Marsh Posté le 19-07-2002 à 21:14:51   

Reply

Marsh Posté le 20-07-2002 à 01:03:47    

Limit a écrit a écrit :

hello,  
 
Aujourd'hui, on s'est pris plein de too many connections avec environ une 20aine de personnes onlines, hier on avait environ 45 personnes onlines, et pas d'erreur :??:
 
D'après les comments, il s'agirait d'un bug mysql.
http://www.mysql.com/doc/T/o/Too_many_connections.html
 
Joce a eu le meme problème avec HFR http://forum.hardware.fr/forum2.ph [...] h=&subcat=
 
 
vous ne savez pas comment faire pour corriger ca ?
J'ai fais Recharger mysql avec phpmyadmin, mais ca n'a rien changé :(  
 
merci




Il faut modifier le fichier de conf de MySQL pour lui permettre plus de connexions simultanées


---------------
༼ つ ◕_◕ ༽つ
Reply

Marsh Posté le 20-07-2002 à 01:15:10    

c'est ce que j'essaie de faire, mais bon là je comprends pas tout.
 
Je le change, je regarde dans phpmyadmin, effectivement c'est changé, et j'y retourne 5min après et c'est revenu à sa veleur initiale, j'y comprends rien :cry:

Reply

Marsh Posté le 20-07-2002 à 08:20:52    

tu es sur un serveur mutualisé ?


---------------
Ma galerie photo créée avec Piwigo et hébergée sur Piwigo.com
Reply

Marsh Posté le 20-07-2002 à 10:08:34    

serveur dédié.

Reply

Marsh Posté le 20-07-2002 à 10:09:03    

apparement il y a quand meme un problème, j'envoie un mail à ovh.

Reply

Marsh Posté le 20-07-2002 à 10:44:42    

Limit a écrit a écrit :

apparement il y a quand meme un problème, j'envoie un mail à ovh.




ovh ?, t'es sur qu'ils te permettent de modifier la conf mysql ? :/
 
à mon avis ils doivent un batch qui remet les valeurs par défaut non ?


---------------
༼ つ ◕_◕ ༽つ
Reply

Marsh Posté le 20-07-2002 à 11:03:02    

il est root sur son dédié il fait ce k'il veut au niveau de la config et de ce ki tourne dessus
 
tu redemarres bien mysql apres avoir change la valeur ?
 
essayes plutot de fermer tes connections plutot ou de matter si t'as pas un script ou la connection n'est pas fermée (un script qui ne serait que peu de fois executée ce qui explikerait ke ca se produit de maniere aleatoire...)

Reply

Marsh Posté le 20-07-2002 à 11:03:08    

j'ai envoyé un mail, j'attends leur réponse. Mais c'est vraiment chiant :D

Reply

Marsh Posté le 20-07-2002 à 11:04:15    

si ca te fait vraiment chier repartis tes forums sur plusieurs bases mysql :??:

Reply

Marsh Posté le 20-07-2002 à 11:04:15   

Reply

Marsh Posté le 20-07-2002 à 11:05:46    

Yack a écrit a écrit :

il est root sur son dédié il fait ce k'il veut au niveau de la config et de ce ki tourne dessus
 
tu redemarres bien mysql apres avoir change la valeur ?
 
essayes plutot de fermer tes connections plutot ou de matter si t'as pas un script ou la connection n'est pas fermée (un script qui ne serait que peu de fois executée ce qui explikerait ke ca se produit de maniere aleatoire...)



dans ssh
je ferme mysql comme ca /etc/rc.d/init.d/mysql stop  ensuite, je kille 1 à 1 tous es preocess qui sont encore en marche, jusqu'à ce qu'il soit bien tous killed et je démaree mysql comme ca safe_mysqld -O table_cache=200 -O max_connections=100  
 
Ca vient encore de me le faire :/ La valeur est revenu à 10

Yack a écrit a écrit :

 
essayes plutot de fermer tes connections plutot ou de matter si t'as pas un script ou la connection n'est pas fermée (un script qui ne serait que peu de fois executée ce qui explikerait ke ca se produit de maniere aleatoire...)




 
Comment je peux faire ca ?
 
merci

Reply

Marsh Posté le 20-07-2002 à 11:06:27    

Yack a écrit a écrit :

si ca te fait vraiment chier repartis tes forums sur plusieurs bases mysql :??:  



mais bon, dans tous les cas, le max_connections à 10, ca fait vraiment pas bcp :/

Reply

Marsh Posté le 20-07-2002 à 11:07:42    

Limit a écrit a écrit :

 
Comment je peux faire ca ?
merci



En fait, je crois que la seule possibilité c'est de matter les scripts.


Message édité par Limit le 20-07-2002 à 11:07:59
Reply

Marsh Posté le 20-07-2002 à 11:11:31    

service mysql stop


 
tu modifies la valeur dans le fichier de conf de mysql et tu ne la passes pas par la ligne de commande kan tu le demarres
 
kan cai modifié tu fais :

service mysql start


 
normalement ca devrait marcher
 
ps : kan je fésé atomic forum, max_users_connection etait a 3 :p

Reply

Marsh Posté le 20-07-2002 à 11:13:11    

Limit a écrit a écrit :

En fait, je crois que la seule possibilité c'est de matter les scripts.




 
ouvres ta connection
fais toutes tes requetes
fermes ta connection
 
traites le resultat de tes requetes seulement la
 
tu peux aussi revoir un peu ta base mysql avec qques index en plus etc
 
n'abuses pas des jointures trop nombreuses ca lock les tables :/

Reply

Marsh Posté le 20-07-2002 à 11:18:33    

Yack a écrit a écrit :

service mysql stop


 
tu modifies la valeur dans le fichier de conf de mysql et tu ne la passes pas par la ligne de commande kan tu le demarres
 
kan cai modifié tu fais :

service mysql start


 
normalement ca devrait marcher
 
ps : kan je fésé atomic forum, max_users_connection etait a 3 :p  




d'accord, je vais essayer, merci
 
max_users_connections, il est à 0 chez nous, elle sert à quoi cette variable ?
elle n'y est pas ici
http://dev.nexen.net/docs/mysql/an [...] IABLES.php

Reply

Marsh Posté le 20-07-2002 à 11:24:05    

Citation :

max_user_connections The maximum number of active connections for a single user (0 = no limit).

On va changer ca aussi alors

Reply

Marsh Posté le 20-07-2002 à 11:28:58    

pour un utilisateur mysql donc
tu peux faire plusieurs bases et utilisateurs, ca peut etre interessant aussi...

Reply

Marsh Posté le 20-07-2002 à 11:35:01    

oui, on peut tenter ca aussi.
 
Sinon, vous etiez plutot mysql_connect ou pconnect ?
 
J'ai recu ca pour ceux que ca intéresse

Citation :

So download PHP 4.3.0 (latest CVS) and use
 
mysql_pconnect($server, $username, $password, MYSQL_CLIENT_INTERACTIVE);
 
The 4th optional parameter is new, I implemented him a few days ago. Also set  
interactive_timeout on the server side. With this new feature, mysql server  
closes non used persistent connections after the specified idle time (I  
prefer 20 mins = 1200)

Reply

Marsh Posté le 20-07-2002 à 16:02:44    

pas de connection persistante ca bouffe plus de ressources k'autre chose :/

Reply

Marsh Posté le 23-07-2002 à 16:50:30    

Limit a écrit a écrit :

mais bon, dans tous les cas, le max_connections à 10, ca fait vraiment pas bcp :/




Avec des scripts correctement optimisés qui ferment bien les connexions MySQL après chaque requête 10 connexions suffisent amplement, même sur des sites à très fort trafic. Une requête moyenne s'effectue grosso-modo en 150ms, connection comprise. Avec un max_connections à 10 tu peux déjà faire plus de 60 requêtes à la seconde. Si tu as besoin de plus c'est que tu as des scripts écris avec les pieds, ou que ton site génère vraiment un trafic énorme.
 
Pour info je loue un petit serveur dédié chez OVH afin d'héberger un forum automobile qui est très fréquenté (Forum-Auto.com, il y a entre 90 et 140 membres connectés simultanément toute la journée aux heures de bureau) et je suis loin d'utiliser 10 connexions MySQL ...

Reply

Marsh Posté le 15-08-2002 à 06:57:38    

au si t'utilises des pconnects, t'es mal barré avec tes 10 connections simultanées :D
Perso sur HFR y a plus de 200 requètes par secondes.
Sinon si t'utilises des pconnects, pour réduire le pb de too many connexions, il faut que tu descends le paramètre wait_timeout dans le my.cnf, qui est par defaut à 28800 s pour quelque chose de plus raisonnable :)


Message édité par joce le 15-08-2002 à 06:59:41
Reply

Marsh Posté le    

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed