Estoy intentando crear una aplicación JSF utilizando el IDE de Eclipse. Estoy usando un servidor mySQL remoto como mi base de datos. ¿Cómo me conecto a esta base de datos remota para crear tablas y acceder a ellas?¿Cómo conectarse a una base de datos remota de MySQL con Java?
Respuesta
Simplemente proporcione el IP/nombre de host de la máquina remota en su cadena de conexión de base de datos, en lugar de localhost
. Por ejemplo:
jdbc:mysql://192.168.15.25:3306/yourdatabase
Asegúrese de que no bloquee la el acceso al puerto 3306
también sin cortafuegos, asegúrese de que el usuario se está conectando con el se le permite conectarse desde este nombre de host en particular. Para entornos de desarrollo, es seguro hacerlo por 'username'@'%'
. Compruebe the user creation manual y el GRANT
manual.
Necesita pasar IP/nombre de host de la máquina de rempote en la cadena de conexión.
import java.sql.*;
import javax.sql.*;
public class Connect
{
public static void main (String[] args)
{
Connection conn = null;
try
{
String url = "jdbc:mysql://localhost:3306/mydb";
Class.forName ("com.mysql.jdbc.Driver");
conn = DriverManager.getConnection (url,"root"," ");
System.out.println ("Database connection established");
}
catch (Exception e)
{
e.printStackTrace();
}
finally
{
if (conn != null)
{
try
{
conn.close();
System.out.println ("Database connection terminated");
}
catch (Exception e) { /* ignore close errors */ }
}
}
}
}
En lugar de un host local, reemplacé mi dirección de máquina remota. este es el código: 'String url =" jdbc: mysql: //172.18.227.237/struts2 "; conn = DriverManager.getConnection (url, "root", "admin") ';. Pero ahora me sale el error, 'com.mysql.jdbc.exceptions.MySQLSyntaxErrorException: Acceso denegado para el usuario 'root'@'172.20.169.174' a la base de datos 'struts2'. Obtuve acceso remoto al servidor mysql. – Angeline
Un poco tarde para la fiesta con esto, pero: reemplace "jdbc: mysql: //172.18.227.237/struts2" con "jdbc: mysql: //172.18.227.237: 3306/struts2" (tenga en cuenta el número de puerto). En caso de que alguien detrás de mí cometa este mismo error. – Kingsolmn
Nunca, nunca, por ningún motivo o propósito, podrá conectarse a una máquina remota utilizando localhost o 127.0.0.1. –
Además, usted debe asegurarse de configuración del servidor MySQL (/etc/mysql/my.cnf,/etc/default/MySQL en Debian) no tiene "skip-networking" activado y no binded exclusivamente a la interfaz loopback (127.0.0.1) pero también a la interfaz/dirección IP a la que desea conectarse.
Recuerde reiniciar mysql en la máquina remota mediante 'sudo /etc/init.d/mysql restart' después de este cambio. – cindyxiaoxiaoli
Para acceder a la base de datos desde la máquina remota, debe otorgar otorgar todos los privilegios a su base de datos.
ejecute la siguiente secuencia de comandos para otorgar permisos: OTORGUE TODOS LOS PRIVILEGIOS EN . TO usuario @ '%' IDENTIFICADO POR 'contraseña';
en el archivo my.cnf, por favor cambie la siguiente
## En lugar de saltar de redes por defecto es ahora para escuchar sólo en localhost ## que es más compatible y no es menos seguro. ## bind-address = 127.0.0.1
Crear un nuevo usuario en el esquema 'mysql' (mysql.user) Ejecutar este código en su espacio de trabajo MySQL
“GRANT ALL ON . to [email protected]'%'IDENTIFIED BY '';
Abra la Puerto '3306' en la máquina que tiene la base de datos.
Control Panel -> Windows Firewall -> Advance Settings -> Inbound Rules -> New Rule -> Port -> Next -> TCP & set port as 3306 -> Next -> Next -> Next -> Fill Name and Description -> Finish ->
tratar de comprobar por un msg telnet en cmd incluyendo IP del servidor de base de datos
Cerrar todas las conexiones que está abierto & conectado al servidor de puerto de escucha, sea lo que sea de aplicación o del lado del cliente herramienta (navicat) o en el servidor en ejecución (apache o weblogic). Primero cierre todas las conexiones y luego reinicie todas las herramientas MySQL, apache, etc.
- 1. remota se conecta a una base de datos MySQL
- 2. Cómo conectarse a una base de datos remota desde la aplicación de Iphone nativa
- 3. Conectarse a la base de datos MySQL con RMySQL
- 4. ¿Cómo conectarse a una base de datos MySQL desde un iPhone?
- 5. ¿Cómo conectarse a mysql usando java?
- 6. conexión tiene una base de datos remota
- 7. Conectarse a la base de datos Oracle con C++
- 8. Cómo conectarse a la base de datos sqlite con contraseña
- 9. conéctese a la base de datos remota de mysql a través de ssh usando java
- 10. ¿Sincronizar base de datos remota a local?
- 11. Cómo conectarse a la base de datos Oracle 11g de forma remota
- 12. Java: problemas para conectarse a la base de datos MySQL en línea usando JDBC
- 13. Cómo copiar una tabla de una base de datos mysql a otra base de datos mysql
- 14. Conectarse a una base de datos MySQL en línea de localhost
- 15. ¿Conectarse a MySQL con contraseña hash?
- 16. DBI: Conectarse a una base de datos diferente si la primera base de datos no existe
- 17. Conectarse a una base de datos SQL externa en C#
- 18. cómo conectarse a una base de datos HSQLDB basada en archivos con sqltool?
- 19. Base de datos remota de mysql en la aplicación Heroku
- 20. mysql volcar a localhost archivo de una base de datos remota
- 21. conectarse a la base de Perl
- 22. Crear base de datos MySQL desde Java
- 23. Acceso de Android a la base de datos SQL remota
- 24. El uso de shell script para insertar datos en la base de datos MySQL remota
- 25. Cómo conectarse a MySQL desde C# a través de SSH
- 26. ¿Cómo elimino una base de datos MySQL?
- 27. Conectar a una base de datos remota ... base de datos en línea
- 28. Cómo conectarse a la consola remota de VMware ESXi
- 29. ¿Cómo debe conectarse una aplicación Metro de Windows 8 a una base de datos central?
- 30. Maneras más eficientes de conectarse a la base de datos mysql en varios archivos (PHP)
Además, asegúrese de otorgar los permisos apropiados a ese host y usuario en su esquema MySQL. – duffymo
@Angeline: Por favor, acepte esta respuesta, ya que esta es la respuesta correcta para la pregunta –
También asegúrese de que: (1) La dirección IP de su PC esté entre las direcciones IP permitidas para conectarse de forma remota a su servidor de base de datos. (2) El nombre de su base de datos, como figura en la URL, será el nombre completo calificado para esa base de datos.Entonces, si la base de datos real se llama 'tienda_web' y se almacena en una cuenta de hosting llamada 'angelazza', el nombre completo de la base de datos es 'angelazza_web_shop'. – Trunk