OVH Cloud OVH Cloud

[newbie] Pb d'acces MySql

5 réponses
Avatar
ASM
Salutatous,

en espérant être au bon endroit,
voilà :

en php avec le code suivant :

mysql_connect("localhost","base","mot_passe");

j'obtiens

Warning: mysql_connect(): Trop de connections in d:\www\blabla\test_bdd.php on line 39

(la ligne 39 est ce que donné + haut)

Probablement, j'ai dû faire une c...e
dans un autre fichier au préalable ?

Mais ... que faire maintenant ?
pour interrompre ces trop nombreuses connections ?
Ou c'est-y qu'on n'a droit qu'à un certain nombre de connections par jour ?

Nota, depuis un autre ordi depuis le même lieu (même IP ?)
c'est pareil : marche plus ... !


PS : je n'y connais rien ni en php ni en mysql

--
Stephane Moriaux et son [moins] vieux Mac

5 réponses

Avatar
CrazyCat
Warning: mysql_connect(): Trop de connections in
d:wwwblablatest_bdd.php on line 39


Le message est pourtant explicite: trop de connexions à la base de données.
Je suspecte une boucle pour aller chercher des infos, et tu as inclus la
connexion dans la boucle.

La structure d'un script php est:

- Connexion à la base
- Traitement des données de la base
- Fermeture de la connexion

Le traitement inclus les boucles de recherches ;)

Avatar
ASM

Warning: mysql_connect(): Trop de connections in
d:wwwblablatest_bdd.php on line 39


Le message est pourtant explicite: trop de connexions à la base de données.


oui, je comprends, surtout que le serveur me sert les messages en fr.

ce que je ne comprends pas est pourquoi
1) c'est à la ligne de commande de connection
que çà me dit cafouiller
2) et c'est le plus génant :
il faut plus de 8 heures pour que çà revienne à la normale ...

Je suspecte une boucle pour aller chercher des infos, et tu as inclus la
connexion dans la boucle.


Scrogneugneu ... j'avions dû gaffer qque part (mais z'où?).
Je ne saurais pas, vu que maintenant c'est revenu, cependant -> cf + bas

La structure d'un script php est:

- Connexion à la base
- Traitement des données de la base
- Fermeture de la connexion


J'avais fini par renvoyer un truc
reconnection à la BdD
avec in fine :
mysql_close();
Je me suis encore plus fait enguirlander ! :-(

Comment se fait cette fermeture ?

Le traitement inclus les boucles de recherches ;)


y a dû y avoir un ; ou une } tombé aux oubliettes :-(

et il n'y a pas moyen d'envoyer qque chose
pour expliquer que c'est OK et que çà peut arreter de boucler ?

--
Stephane Moriaux et son [moins] vieux Mac


Avatar
CrazyCat
ASM wrote:
ce que je ne comprends pas est pourquoi
1) c'est à la ligne de commande de connection
que çà me dit cafouiller


Parce que c'est la connexion qui est refusée?

2) et c'est le plus génant :
il faut plus de 8 heures pour que çà revienne à la normale ...


Parce que tu utilises des connexions persistantes qui ont un TTL un peu
grand?

J'avais fini par renvoyer un truc
reconnection à la BdD
avec in fine :
mysql_close();
Je me suis encore plus fait enguirlander ! :-(
Comment se fait cette fermeture ?


<?
if (!$dbl = mysql_connect($db_host,$db_login,$db_pass)){
die("Error connecting database");
}
...
mysql_close($dbl);
?>

J'ai juste quelques questions pour pousser plus loin la recherche:
- es-tu seul à accéder à cette page?
- ta page n'est-elle pas inclue dans d'autres ou ne fait-elle pas appel
à d'autres, lesquelles feraient aussi des connexions?
- quelles sont les limites de connexions de ta base? par défaut, mySQL
est souvent limité à 50 connexions simultannées, mais tu peux avoir une
valeur bien plus basse

Si tu ne trouve toujours pas, n'hésite pas à me contacter par mail pour
une aide plus précise (et plus chère, ça va de soi ;))

--
Aide informatique: http://help-info.forumactif.com
Humour: http://www.chatfou.com
Tchattez en liberté: http://www.crazy-irc.net

Avatar
ASM
ASM wrote:

ce que je ne comprends pas est pourquoi
1) c'est à la ligne de commande de connection
que çà me dit cafouiller



Parce que c'est la connexion qui est refusée?


pourtant (à ce que je crois) cette ligne de commande est OK

il faut plus de 8 heures pour que çà revienne à la normale ...


Parce que tu utilises des connexions persistantes qui ont un TTL un peu
grand?


vi ... merci ... (il est stipulé newbie) et quoi c'est TTL ?
mais oui, c'est sûr,
y a rien de prévu dans le code ! ni die ni mysql_close

Pour tout dire je récupère un pré-site déjà semi-fonctionnel

et en plus je débarque dans le php et le sql !

C'est un peu la galère :-)

Entre comprendre ce que l'autre a fait (css, php, bdD etoussa)
et ma découverte du php
çà n'avance pas vite
surtout qd MySdl tombe en rideau !

mysql_close($dbl);


j'ai fini par trouver l'info chez Peter Pan :-)

J'ai juste quelques questions pour pousser plus loin la recherche:
- es-tu seul à accéder à cette page?


Normalement je suis le seul à bricoler sur le site
uploads et tout, les anciens fichiers (fonctionnels) ne sont pas ecrasés
je fait mes modifs et tests en //

Donc, oui, probablement 2 ou 3 gus peuvent se connecter aussi

Ils doivent bien pester !

- ta page n'est-elle pas inclue dans d'autres ou ne fait-elle pas appel
à d'autres, lesquelles feraient aussi des connexions?


je te dis pas ! c'est plein d'includes !
et puis des sql qui remplissent un A4

- quelles sont les limites de connexions de ta base?


Faudra que je me renseigne
Il paraît que c'et un très bon hébergement
(dixit le locataire).

Si tu ne trouve toujours pas, n'hésite pas à me contacter par mail pour


Merci, si je merdoie trop, je verrais.

une aide plus précise (et plus chère, ça va de soi ;))


Ya pas un rond de débloqué pour le schmillblick :-/


--
Stephane Moriaux et son [moins] vieux Mac


Avatar
CrazyCat
ASM wrote:
vi ... merci ... (il est stipulé newbie) et quoi c'est TTL ?


TTL est "Time To Live", ou le temps pendant lequel une connexion doit
être laissée ouverte après sa dernière utilisation. Ce n'est pas le
véritable nom (je crois qu'on appelle ça une durée de persistance), mais
ça exprime bien ce que c'est.

- ta page n'est-elle pas inclue dans d'autres ou ne fait-elle pas appel
à d'autres, lesquelles feraient aussi des connexions?
je te dis pas ! c'est plein d'includes !

et puis des sql qui remplissent un A4


Ah ben voila, il y a des usines à gaz SQL que tu ne maitrise(*) pas.

(*) signifie que tu n'as pas la main sur ce qu'elles font ni comment
elles le font.

une aide plus précise (et plus chère, ça va de soi ;))
Ya pas un rond de débloqué pour le schmillblick :-/



Je te fais un package à 0.00 euros :)

--
Aide informatique: http://help-info.forumactif.com
Humour: http://www.chatfou.com
Tchattez en liberté: http://www.crazy-irc.net