Journal : mysql/tomcat: IP vs localhost

Posté par lom (page perso, ) le 29 mars 2004
0
Le titre ne veut pas dire grand chose, mais tous les mots clés y sont.

J'ai un problème incompréhensible lors de l'accès à mysql par tomcat.

J'ai un bean qui initialise la connexion entre tomcat et mysql, le paramètre problématique étant l'url de la connexion: "jdbc:mysql://localhost:3306/appli"

Après un reboot, cette url causait une erreur, c'est à dire que la liaison entre mysql et tomcat n'était pas faite. Cela se faisait sentir au premier accès à la base, qui nous rendait un joli nullPointerException. L'url a du être remplacée par "jdbc:mysql://212.xxx.xxx.xxx:3306/appli", c'est à dire qu'il a fallu mettre l'adresse IP à la place de localhost, sans que l'on comprenne pourquoi, alors qu'a priori aucune modification en rapport avec ça n'a eu lieu.

Tout allait bien jusqu'à un autre reboot, après lequel il a fallu remettre l'ancienne ligne, avec localhost, toujours sans que l'on comprenne pourquoi.

Les recherches sur google, les sites de mysql et tomcat n'ont pas apporté de solution.

Voila la configuration de la machine:

redhat 7.2
mysql 3.23
tomcat4 4.1.10
j2sdk 1.4.0

Quelqu'un saurait-il m'expliquer pourquoi il faut mettre parfois localhost, parfois l'adresse IP? J'aimerai réussir à faire en sorte que ça marche à tous les coups.

Merci

> Lire le journal (7 commentaires, moyenne: 1,1).  

Cette discussion est archivée, il n'est plus possible de laisser des commentaires.

Note : les commentaires appartiennent à ceux qui les ont postés. Nous n'en sommes pas responsables.

Re: mysql/tomcat: IP vs localhost

Posté par grrrreg (page perso, ) le 29/03/2004 à 14:04. (lien). Évalué à 1.

Tu as quoi quand tu tapes:

$ netstat -an | grep 3306

?

grrrreg

  • [^]Re: mysql/tomcat: IP vs localhost

    Posté par lom (page perso, ) le 29/03/2004 à 14:42. (lien). Évalué à 1.

    J'obtiens plusieurs lignes du type:

    tcp 0 0 127.0.0.1:43244 127.0.0.1:3306 TIME_WAIT
    tcp 0 0 127.0.0.1:43245 127.0.0.1:3306 ESTABLISHED
    tcp 0 0 127.0.0.1:43241 127.0.0.1:3306 ESTABLISHED
    tcp 1 0 127.0.0.1:34483 127.0.0.1:3306 CLOSE_WAIT

    Ça ne me semble pas trop mal.

    Le port est ouvert, le problème c'est juste que parfois je dois spécifier localhost pour m'y connecter, et au reboot suivant l'adresse IP de la machine. Ça me surprend beaucoup.

Re: mysql/tomcat: IP vs localhost

Posté par Christophe Martel () le 29/03/2004 à 14:25. (lien). Évalué à 1.

essayes avec 127.0.0.1 comme IP ?

  • [^]Re: mysql/tomcat: IP vs localhost

    Posté par lom (page perso, ) le 29/03/2004 à 14:45. (lien). Évalué à 1.

    Ça avait déjà été essayé au précédent reboot, et ça n'avait pas été concluant.

    Une chose étrange à ce coup ci:
    En java (tomcat), je dois me connecter à l'url avec localhost, sinon ça ne marche pas (pour le reboot courant, en tout cas).

    Par contre, si je veux me connecter à mysql en ligne de commance, je dois mettre l'option -h localhost.localdomain.
    localhost, l'adresse IP, le nom de la machine ou le FQDN ne suffisent pas.

    • [^]Re: mysql/tomcat: IP vs localhost

      Posté par Volnai () le 29/03/2004 à 15:08. (lien). Évalué à 1.

      En vrac :
      regarde du coté du fichier /etc/hosts, de hostname (hostname -f)
      Ensuite verifie sur quelles adresses ecoute mysql : netstat -plat | grep mysql
      Ah, et verifie par un ifconfig que ton interface lo est bien up, et puis ton iptable aussi ptet.

      • [^]Re: mysql/tomcat: IP vs localhost

        Posté par lom (page perso, ) le 29/03/2004 à 15:31. (lien). Évalué à 1.

        C'est bien pour ça que je vous fait appel. Tout me semble bon:

        $ cat /etc/hosts
        # that require network functionality will fail.
        127.0.0.1 localhost localhost.localdomain
        212.xxx.xxx.xxx aber aber.sib.fr

        $ ifconfig

        => eth0 et lo sont up

        $ hostname -f
        aber

        $ hostname
        aber.sib.fr

        tiens, ça ne devrait pas être le contraire?

        $ domainname
        (none)

        Bon, ça fait déjà ça à revoir.

        • [^]Re: mysql/tomcat: IP vs localhost

          Posté par champi (page perso, ) le 29/03/2004 à 21:37. (lien). Évalué à 2.

          Dans mon /etc/hosts les FQDN sont écrits avant les alias :

          Exemple:
          [quote]
          192.168.0.2 mamachine.mondomaine.org mamachine unautrealiaspourmamachine
          [/quote]

          et j'obtiens :

          $ hostname
          mamachine
          $ hostname -f
          mamachine.mondomaine.org

          Ce doit donc être ca ton pbm.

Revenir en haut de page