Foro sobre Java SE > Conexión a una base de datos MySQL con Java
Hola, lo primero, como bien dices, es averiguar los datos de conexión, estos son:
-url o ip del servidor de base de datos
-Puerto del servidor de bbdd(normalmente esta el por defecto 3306)
-Nombre de la base de datos
-Nombre de usuario de conexión al servidor
-Contraseña de acceso al servidor
Una vez que tengas claros estos datos, podras componer la url de conexion a la bbdd. Ahora para averiguar estos datos:
Url o ip del Servidor bbdd --> Para averiguarlo, simplemente, cuando accedes a phpmyadmin, justo arriba del todo pondrá "Servidor: XXXXXXX" pues el XXXXX en tu caso, es tu servidor, a veces pone una ip, y otras pone una url, ambas son validas.
Puerto --> Normalmente esta puesto el por defecto y no es necesario incluirlo en la cadena de conexión. El por defecto es 3306, si estuviera el servidor de bbdd ejecutandose sobre otro puerto, deberás indicarlo.
Para saber el puerto del servidor, en el phpmyadmin, ve al apartado sql y en textarea de la consulta escribes lo siguiente:
SHOW VARIABLES
WHERE Variable_name IN (
'port')
Si es diferente a 3306, ya sabes que tienes que añadirlo en la url de conexion
Nombre de la bbdd --> Normalmente, este lo indicas tu al crearla en el phpmyadmin, si no recuerdas el nombre, en el phpmyadmin, en la izq, suele haber una lista con las bbdd disponibles.
Nombre de usuario --> Este dato normalmente te lo dan cuando contratas el hosting, o a veces lo indicas tu durante el formulario de registro, segun el proveedor va de una forma, u otra.
Aun así, es posible averiguarlo. De nuevo, accede al phpmyadmin al apartado SQL y en el cuadro de consulta, escribes:
select user()
Saldrá una salida tipo "Lokesea@host" Tu nombre de usuario es "Lokesea" lo que esta después de la @ y la propia @, desechalo, eso es el nombre del servidor y no es necesario. Bueno pues eso, es tu nombre de usuario.
Contraseña de acceso al servidor --> Esta ya es mas complicada, ya que al igual que el nombre de usuario, debieron dártelo al contratar el hosting o lo indicaras tu durante el registro(A veces es el mismo que para acceder a tu hosting), para averiguar esto, la única forma sería acceder a tu panel de hosting, y en el tendrás un apartado que pondrá bbdd o mysql, o algún apartado así. Pues normalmente, dentro de ese apartado, te dan opciones para consultar, modificar, ... la información referente a la base de datos.
Bueno, pues una vez que tienes esos datos, pongamos un ejemplo de url de conexión:
Siendo...
usuario --> Pepe
password --> 12345
puerto --> 3306(Por defecto)
Nombre bbdd --> mibbdd
servidor --> 193.147.50.11(Ficticio)
Con estos datos, la llamada al metodo getConnection quedaría así:
DriverManager.getConnection("jdbc:mysql://193.147.50.11/mibbdd","Pepe","12345");
En cambio si fueran estos:
usuario --> Pepe
password --> 12345
puerto --> 7784
Nombre bbdd --> mibbdd
servidor --> 193.147.50.11(Ficticio)
La llamada sería:
DriverManager.getConnection("jdbc:mysql://193.147.50.11:7784/mibbdd","Pepe","12345");
Así que nada, importante, averiguar esos datos... y después compones la url de conexión.
Nota: Según el hosting y características, a veces tienen el acceso al servidor de bbdd restringido solo a local, por lo cual, te seria imposible realizar una conexión a ella desde el exterior. Por ello, te recomiendo que antes de nada, te asegures que el servidor de bbdd que te ofrece tu proveedor de hosting, permite conexiones externas.
Bueno un saludo y ya nos cuentas.
Quiero conectar a mi base de datos MySQL con Java.
Estoy utilizando JDBC y tengo instalado el controlador. (Com.mysql.jdbc.Driver)
El único problema es que sigo obteniendo un error:
com.mysql.jdbc.exceptions.jdbc4.CommunicationsException El último paquete enviado correctamente al servidor fue hace 0 milisegundos.
Aquí está mi código:
Class.forName("com.mysql.jdbc.Driver");
Connection connection = DriverManager.getConnection("jdbc:mysql:/mydomain.com/mydatabase", "username", "password");
No soy positivo cómo componer la dirección URL (y donde consigo mi nombre de usuario y contraseña) pero he hecho un montón de investigación.
Soy la única persona con acceso a base de datos y de dominio, por lo que no sirve de nada pedir al administrador.
Yo uso de phpMyAdmin para crear la base de datos (s) y gestionarlos. Cómo puedo utilizar mi nombre de usuario y contraseña phpMyAdmin o qué?
Por cierto, mi sitio es asphostportal.com
Así que mis preguntas son:
¿Cómo hago la dirección URL de conexión?
¿Cuál es mi nombre de usuario y contraseña?