2017-08-16 1 views
0

J'essaie de me connecter à une base de données située dans Google Cloud SQL à partir d'une application web Java déployée sur AWS Elasic Beanstalk (avec Eclipse), en utilisant la méthode JDBC.Comment se connecter à une instance google cloud sql depuis AWS elastic beanstalk

String url = ConfigUtilities.getProperty("DATABASE_CONNN_URL_" + mode); 
conn = DriverManager.getConnection(url, ConfigUtilities.getProperty("USERNAME_DB_" + mode), 
       ConfigUtilities.getProperty("PASSWORD_DB_" + mode)); 

L'URL ressemble à ceci

DATABASE_CONNN_URL_PRODUCTION=jdbc:google:mysql://project-name:europe-west1:instance-name/db-name 

je le pot suivant joint: mysql-connector-java-6.0.6.jar (situé dans le dossier lib sous WEB-INF).

je reçois l'erreur suivante

No suitable driver found for jdbc:google:mysql://project-name:europe-west1:instance-name/db-name 

La même application déployée dans l'App Engine fonctionne.

+0

veuillez voir https://cloud.google.com/sql/docs/mysql/connect-external-app#java – Vadim

Répondre

0

extrait de Connecting to Cloud SQL from External Applications L'usine socket JDBC fournit une alternative au logiciel de proxy côté client et nécessite l'API Cloud SQL doit être activé, tout comme le fait proxy. Il s'authentifie avec les informations d'identification Cloud SDK, de sorte que le SDK Cloud doit être installé et authentifié.

exemples/compute-moteur/src/main/java/com/google/nuage/sql/mysql/example/ListTables.java

Chaîne JDBCURL = String.format ( « jdbc: mysql : // google /% s? cloudSqlInstance =% s & " +" socketFactory = com.google.cloud.sql.mysql.SocketFactory ", databaseName, instanceConnectionName);

Connexion de connexion = DriverManager.getConnection (jdbcUrl, nom d'utilisateur, mot de passe);