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

MySQL Discussion :

Connexion SQL distante impossible avec la lib mysql ?


Sujet :

MySQL

  1. #1
    Membre régulier
    Inscrit en
    Septembre 2002
    Messages
    200
    Détails du profil
    Informations forums :
    Inscription : Septembre 2002
    Messages : 200
    Points : 120
    Points
    120
    Par défaut Connexion SQL distante impossible avec la lib mysql ?
    Bonjour.
    J'ai besoin d'aide pour un truc super simple mais je ne sais pas du tout comment faire.

    Je développe une application en C++ qui doit se connecter à un serveur distant disposant d'une base de données MySQL. Je suis sous Ubuntu, et j'utilise dans mon programme l'API libmysql, qui dispose notamment de la fonction:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    MYSQL *mysql_real_connect(MYSQL *mysql, const char *host, const char *user, const char *passwd, const char *db, unsigned int port, const char *unix_socket, unsigned long client_flag)
    Voila, donc lorsque dans host je mets "localhost" et que j'execute mon programme en local chez moi, ca fonctionne très bien. Lorsque je mets à la place mon ip : "82.x.x.x" ou même mon nom de domaine attaché à l'ip : "stalex.selfip.com", j'ai les deux problèmes suivants:

    - La fonction mysql_real_connect prend environ 5 minutes pour s'executer (mon application reste donc en interblocage pendant ce temps).
    - Lorsque j'essaie d'effectuer une requête, mon log me dit finalement:
    17:09:47: ERROR: 'Can't connect to MySQL server on 'stalex.selfip.com' (110)'

    Voici ce que j'ai deja fait apres avoir cherché un peu:
    1) Dans my.cnf, j'ai changé bind-address = 127.0.0.1 par bind-address = 0.0.0.0 de façon à utiliser toutes les connections.
    2) J'ai également essayé de commenter bind-address carrément.
    3) J'ai créé (avec phpmyadmin) un compte pour mon domaine. Avant je disposais de root@localhost, maintenant j'ai aussi root@stalex.selfip.com ....

    Voilà, bien sur la connexion qui prend 5 minutes c'est embetant mais le plus gros probleme est carrément que je ne réussis pas à executer une quelconque requete !

    PS: la fonction mysql_real_connect return un pointeur null.

    Merci pour votre aide précieuse.
    Alexandre.

  2. #2
    Membre régulier
    Inscrit en
    Septembre 2002
    Messages
    200
    Détails du profil
    Informations forums :
    Inscription : Septembre 2002
    Messages : 200
    Points : 120
    Points
    120
    Par défaut
    Bon, personne a l'air très enclin à m'aider. Voici ce que j'avais oublié pour que ca marche:

    1) Router le port de ma freebox vers l'IP local de mon réseau (192.168...). Ceci se fait dans le compte free, propriété "routeur".
    2) Ajouter un utilisateur de connexion à ma base de données (root) sur le domaine 192.168.0.254 (ma freebox) pour que la connexion SQL puisse s'effectuer. Ceci se fait dans phpmyadmin.


    Merci et a la prochaine.
    Alex.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Connexion à la base impossible avec hibernate
    Par jason69 dans le forum Hibernate
    Réponses: 3
    Dernier message: 29/06/2007, 14h23
  2. Problème connexion sql server 2005 avec asp.net en C#
    Par PKO06 dans le forum MS SQL Server
    Réponses: 8
    Dernier message: 29/05/2007, 18h46
  3. Connexion à SQL Server 2000 avec Visual Basic 6
    Par method_man dans le forum VB 6 et antérieur
    Réponses: 1
    Dernier message: 06/03/2007, 11h32
  4. pb connexion sql server 2000 avec ODBC
    Par prophete3d dans le forum MS SQL Server
    Réponses: 1
    Dernier message: 21/11/2005, 17h19
  5. [JDBC] connexion SQL Server impossible
    Par blaiseac dans le forum JDBC
    Réponses: 10
    Dernier message: 27/10/2005, 14h58

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