Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1200 connectés 

  FORUM HardWare.fr
  Programmation
  Java

  Pb de connexion java <-> BDD MySQL via un tunnel SSH

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Pb de connexion java <-> BDD MySQL via un tunnel SSH

n°1693998
onigami
Keep smilling!
Posté le 27-02-2008 à 22:21:09  profilanswer
 

Bonjour,
 
Voilà, j'ai un problème quand je veut me connecter à partir d'un client java, que j'ai développé à partir d'un programme marchant pour postgreSQL, à ma base de données MySQL qui est située sur un serveur distant . J'utilise le client ssh PuTTY pour faire un tunnel SSH avec les ports 3306 (MySQL) vers mon serveur.
Mes identifiants sont valides et j'ai bien compilé en précisant le driver dans le classpath.
 
Voici mon code :
 
import java.sql.*;
 
class connexion
{
StringBuffer resultat= new StringBuffer();
int nCol;
 public connexion ()
    {
 envoiRequete();
 }
 
 void envoiRequete()
 {
 //Connexion
 try
    {
 String nomDriver = "com.mysql.jdbc.Driver";
 Connection conn=null;
 try
  {
  Class.forName(nomDriver);  
  conn = DriverManager.getConnection("jdbc:mysql://localhost:3306/freez","hote"­,"" );
  }
 catch(ClassNotFoundException cnfe)
  {
  System.out.println("La classe "+nomDriver+" n'a pas été trouvée" );
  cnfe.printStackTrace();
  }
 //Requete
 Statement stmt = conn.createStatement();
 ResultSet rs = stmt.executeQuery("SELECT * from event;" );
 ResultSetMetaData rsmd = rs.getMetaData ();
 while (rs.next ())
     {
  String tmp= "";
  for (int i = 1; i <= nCol ; ++i)
   {
      switch (rsmd.getColumnType (i))
    {
    case Types.INTEGER:
    tmp = ""+rs.getInt (i);
    break;
       case Types.CHAR:
    tmp = ""+rs.getString (i);
    break;
    default:
    System.out.println("Type non implémenté" );
    break;
    }
    resultat.append (tmp+"\t" );
   }
  resultat.append ("\n" );
  }
 //Affichage du resultat
 System.out.println(resultat.toString());
 //Fin de connexion
 conn.close();
 }
 catch (SQLException ex)  
    {
 System.out.println("Exception: " + ex.toString());
 ex.printStackTrace() ;
 }
 }
 
 public static void main(String argv[])
    {
      new connexion ();
    }
}
 
 
 
Quand je lance le programme, l'accès à la base de donnée m'est refusée :
 
URL jdbc:mysql://localhost:3306/freez
Exception: com.mysql.jdbc.exceptions.jdbc4.CommunicationsException: Communicatio
ns link failure
 
Last packet sent to the server was 0 ms ago.
com.mysql.jdbc.exceptions.jdbc4.CommunicationsException: Communications link fai
lure
 
 
 
Plus tout un tas d'erreurs qui sont causées par ce refus de connexion.
 
Je pense que cela viens du tunnel SSH, pourtant je peux me connecter à cette même BDD via phpmyadmin en faisant un tunnel SSH.
 
S'il vous plait, aidez moi, cela fait 3 jour que je me casse la tête sur ce problème.


Message édité par onigami le 27-02-2008 à 22:22:28
mood
Publicité
Posté le 27-02-2008 à 22:21:09  profilanswer
 


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  Java

  Pb de connexion java <-> BDD MySQL via un tunnel SSH

 

Sujets relatifs
Divergence de compteur entre fichier et BDDDriver PDO pour MySQL, necessaire ?
Problème d'import mysql ?[MySQL] Héritage ?
[MySQL] Requète aléatoire en fonction du jourproblème Java ME client web service
SSH Erreur lors de la connexion[MYSQL] Volume des enregistrements NULL ?
[MySql] problème de décimales 
Plus de sujets relatifs à : Pb de connexion java <-> BDD MySQL via un tunnel SSH


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR