No se puede conectar a MySQL de GoDaddy con Java

Estoy intentando conectarme a una base de datos mysql, pero sigo recibiendo el error: com.mysql.jdbc.exceptions.jdbc4.CommunicationsException: error en el enlace de comunicaciones

Sé que la URL debe ser: "jdbc: mysql: // server-url: 3306"

Aquí está el código:

import java.sql.Connection;
import java.sql.DriverManager;

public class FT_Database_Connection{
private Connection connection;

public FT_Database_Connection(String url, String username, String password){
    try{
        System.out.println("Loading driver...");
        Class.forName("com.mysql.jdbc.Driver");
        System.out.println("Driver loaded!");

        String user = username;
        String db_pw = password;
        System.out.println(url);
        System.out.println(username);
        System.out.println(password);
        Connection test = DriverManager.getConnection(url, user, db_pw);

    }catch(Exception e){
        System.out.println("Couldn't get database connection.");
        e.printStackTrace();
    }
}

public Connection get_connection(){
    return this.connection;
}

}

¿Algunas ideas?

Además, Godaddy me pregunta si quiero DSN . ¿Lo que significa eso? ¿Lo necesito?

Gracias

Respuesta 1

Si la memoria funciona, GoDaddy tiene un par de implementaciones diferentes de MySQL DB que puede elegir. Uno que permite el acceso remoto y otro que no. ¿Estás seguro de que has elegido el correcto?

¿Has intentado conectarte de forma remota usando MySQL Workbench primero? ¿O incluso haciendo telnet al puerto? Eso asegurará que tenga el nombre de db y los permisos correctos para conectarse de forma remota. Una vez que pueda confirmar que funciona, hacer que el código funcione debería ser más fácil.

Respuesta: 2

Debe poner el nombre de su base de datos después del puerto MySQL (: 3306 / DB_name). Aquí está una de mis conexiones:

import java.sql.Connection;
import java.sql.Driver;
import java.sql.DriverManager;
import java.sql.SQLException;

public class MySQL{

    static Connection connect;
    public static void main(String[] args) throws InstantiationException, IllegalAccessException, ClassNotFoundException, SQLException {
    Credentials();

    Class.forName ("com.mysql.jdbc.Driver").newInstance ();

    String url = "jdbc:mysql://" + host + ":3306/" + datab;

    Driver test = DriverManager.getDriver(url);
    // testing to make sure i'm using the correct
    //driver and further testing host
    System.out.println(test);
    connect = DriverManager.getConnection(url, userName, password);

    System.out.println ("Connected to " + host);
    }
}

Deberá proporcionar los valores de cadena "host" y "datab"

Respuesta: 3

Quiero extraer toda la anotación de mi objeto JSONArray y encontré esta publicación https://www.mkyong.com/java/json-simple-example-read-and-write-json/. El problema es que mi JSONArray es una especie de "...

Posible duplicado: ¿Cómo puedo interactuar con el diseño de la pantalla de bloqueo para mostrar texto en él, como esta aplicación: Quiero mostrar algo de texto en la pantalla de bloqueo de Android igual que la aplicación de Android 'Me gusta' ...

Soy nuevo en Scala y nuestro proyecto combina código Java y Scala (usando Play Framework). Estoy tratando de escribir un método Scala que pueda tomar un mapa Java anidado como: LinkedHashMap <String, ...

Tengo una base de código java que genera un hash codificado en base64 seguro para URL a partir de una cadena, y me pregunto si esto sería posible con las herramientas de línea de comandos de Linux. Estoy adivinando el problema con lo que yo ...