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
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).
Vous avez demandé le commentaire #381315.



Re: mysql/tomcat: IP vs localhost
essayes avec 127.0.0.1 comme IP ?
[^]Re: mysql/tomcat: IP vs localhost
Ç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
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
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
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.