IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Administration MySQL Discussion :

Augmenter nombre de requêtes par connexion


Sujet :

Administration MySQL

  1. #1
    Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Mars 2014
    Messages
    6
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 31
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mars 2014
    Messages : 6
    Points : 62
    Points
    62
    Par défaut Augmenter nombre de requêtes par connexion
    Bonjour,

    Je suis actuellement sur un programme qui stocke normalement toutes les 3 secondes les valeurs qu'il récupère d'une sonde de température dans une BDD (mysql).
    J'ai constaté qu'après 1650 secondes, le programme s'arrêtait. Après avoir débuggé, je me suis rendu compte que c'est la BDD qui fait quitter le programme.
    J'ai essayé de mettre un envoi toutes les secondes et je me suis rendu compte que cette fois le programme quitte au bout de 555 secondes. J'en conclus que ce n'est pas la longueur de ma connexion à la BDD qui est mise en cause, mais bien le nombre de requêtes qui peuvent être faites par connexion.

    D'où ma question : Comment augmenter cette capacité ? Ou quelle variable dans mysql dois-je changer ?

    Petite précision, je développe sur Raspberry Pi, c'est donc un environnement Unix !

    Merci !

  2. #2
    Membre du Club
    Inscrit en
    Mai 2010
    Messages
    27
    Détails du profil
    Informations forums :
    Inscription : Mai 2010
    Messages : 27
    Points : 44
    Points
    44
    Par défaut
    Salut,

    Je ne crois pas qu'il existe une telle limite. Par contre, il y a un nombre max de tables temporaires ouvertes par connexion.
    Tu peux essayer de jouer sur "max_tmp_tables", ou modifier tes requêtes pour qu'elles ne créent pas de tables temporaires (mais ce n'est qu'une hypothèse. Les tables temporaires générées pour une requête sont peut-être supprimées quand la requête est finie).

    Mais le plus simple est peut-être de refaire une connexion à chaque fois. As-tu vraiment besoin d'une connexion permanente?

  3. #3
    Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Mars 2014
    Messages
    6
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 31
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mars 2014
    Messages : 6
    Points : 62
    Points
    62
    Par défaut
    Je te remercie pour ta réponse.

    J'ai en effet pu constater qu'il n'y avait pas de seuil. En revanche, oui il me faut une connexion tout le long du programme, pour une durée variant entre 10 et 35 minutes.

    J'ai résolu mon problème, en me rendant compte que c'était dû à une fuite mémoire : une allocation dynamique était faite, mais jamais supprimée (pas de delete). En conséquence mon programme buggait au bout d'un certain temps.

    En revanche, je n'arrive pas à trouver comment faire pour récupérer une valeur provenant d'une requête SQL. Comment puis-je faire une requête d'un seul champ, pour récupérer ensuite la valeur (float) et l'utiliser dans mon programme ?

    Merci encore

  4. #4
    Membre habitué
    Homme Profil pro
    Directeur technique
    Inscrit en
    Février 2011
    Messages
    146
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Directeur technique
    Secteur : Transports

    Informations forums :
    Inscription : Février 2011
    Messages : 146
    Points : 172
    Points
    172
    Par défaut
    sinon il exite bien un max_query_by_hour =)

  5. #5
    Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Mars 2014
    Messages
    6
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 31
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mars 2014
    Messages : 6
    Points : 62
    Points
    62
    Par défaut
    Tu sais à combien est cette valeur ?

  6. #6
    Membre habitué
    Homme Profil pro
    Directeur technique
    Inscrit en
    Février 2011
    Messages
    146
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Directeur technique
    Secteur : Transports

    Informations forums :
    Inscription : Février 2011
    Messages : 146
    Points : 172
    Points
    172
    Par défaut
    0 par défaut (=no limit)

  7. #7
    Membre du Club
    Inscrit en
    Mai 2010
    Messages
    27
    Détails du profil
    Informations forums :
    Inscription : Mai 2010
    Messages : 27
    Points : 44
    Points
    44
    Par défaut
    @Aurélien : sur quelle version de Mysql as-tu la variable max_query_by_hour?
    (je ne la vois ni dans la doc, ni dans mes serveurs en 5.5 et 5.6)

Discussions similaires

  1. [9.2] Connaitre le nombre de requêtes par seconde
    Par stoner2008 dans le forum Débuter
    Réponses: 2
    Dernier message: 15/07/2013, 14h40
  2. Nombre de requêtes par table par heure
    Par debdba dans le forum Oracle
    Réponses: 10
    Dernier message: 08/06/2012, 18h19
  3. Réponses: 4
    Dernier message: 16/11/2007, 16h27
  4. Nombre de requêtes par table
    Par nicoaix dans le forum Requêtes
    Réponses: 12
    Dernier message: 06/07/2006, 12h50
  5. IB et Nombre de requêtes par secondes
    Par lio33 dans le forum Débuter
    Réponses: 5
    Dernier message: 15/09/2005, 17h52

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo