Foros del Web » Programación para mayores de 30 ;) » Java »

[SOLUCIONADO] Conexión remota a mysql

Estas en el tema de Conexión remota a mysql en el foro de Java en Foros del Web. Hola, Soy profesor de una escuela y estoy haciendo una aplicación en java para tener en control de los estudiantes. Para ello necesito poder realizar ...
  #1 (permalink)  
Antiguo 01/09/2014, 13:03
Avatar de raydelpq94  
Fecha de Ingreso: abril-2014
Ubicación: Arroyo Naranjo
Mensajes: 23
Antigüedad: 10 años
Puntos: 0
Información Conexión remota a mysql

Hola, Soy profesor de una escuela y estoy haciendo una aplicación en java para tener en control de los estudiantes. Para ello necesito poder realizar una conexión a un servidor mysql que esta instalado en mi PC con xamp. Cuando realizo la conexión y utilizo como nombre del servidor localhost no tengo problemas, pero cuando pongo mi IP me da error. Les agradecería si pudiesen ayudarme. Gracias de ante mano.

Código:
public class conector {
public Connection conexion;
public String error;
public Statement instruccion;
String host="localhost", user="user", pass="pass",String="estudiantes";
    
    public conector() throws ClassNotFoundException, SQLException{
            try{
                Class.forName("com.mysql.jdbc.Driver");
                // org.gjt.mm.mysql.Driver
                conexion=DriverManager.getConnection("jdbc:mysql://"+host+":3306/"+bd,user,pass);
                instruccion = conexion.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE, ResultSet.CONCUR_UPDATABLE);
            }
            catch(ClassNotFoundException e){// si no se encuentra el driver
                error=e.getMessage();
            }
            
            catch(SQLException e){// si la conexion falla
                error=e.getMessage();
            }
    }
    
    public Connection getConexion(){
        return conexion;
    }
    
    public void cierra() throws SQLException{
        try{
            conexion.close();
        }
        catch(Exception ex){
        
       }
    }
    
    public String Get_error(){
        return error;
    }
}
  #2 (permalink)  
Antiguo 01/09/2014, 13:37
Avatar de Profesor_Falken  
Fecha de Ingreso: agosto-2014
Ubicación: Mountain View
Mensajes: 1.323
Antigüedad: 9 años, 8 meses
Puntos: 182
Respuesta: Conexión remota a mysql

Buenas,

Cuando tratas las excepciones no estás recogiendo bien el error. Sería interesante que por lo menos pongas un e.printStackTrace() dentro de cada uno de los catch. De esta forma nos podrías dar una información mucho más detallada del error producido.

Por otro lado, cuando hablas de "mi IP"... a que te refieres? a tu IP dentro de la red local o a tu IP pública de internet? Puedes hacer ping a dicha IP? Te puedes conectar por telnet? En resumen, hay conectividad?
Si no es así: tienes algún antivirus o/y cortafuegos que puede estar interfiriendo? Quizás debes mapear tu router en la configuración NAT?

Un saludo
  #3 (permalink)  
Antiguo 01/09/2014, 13:49
Avatar de raydelpq94  
Fecha de Ingreso: abril-2014
Ubicación: Arroyo Naranjo
Mensajes: 23
Antigüedad: 10 años
Puntos: 0
Respuesta: Conexión remota a mysql

Cuando digo IP me refiero a mi dirección ip local, y este es el mensaje de error que me muestra el e.printStackTrace()

message from server: "Host 'Server2-PC' is not allowed to connect to this MySQL server

Gracias por responder, ojalá y me puedas seguir ayudando.
  #4 (permalink)  
Antiguo 02/09/2014, 01:25
Avatar de Xerelo  
Fecha de Ingreso: mayo-2009
Mensajes: 2.175
Antigüedad: 14 años, 11 meses
Puntos: 306
Respuesta: Conexión remota a mysql

Xampp es un entorno de desarrollo, no está pensado para producción, así que por defecto MySQL no admite conexiones externas.

http://tenax.helpserve.com/Default/K...tos-en-otra-pc
http://www.rosgos.com/conexiones-remotas-en-mysql/
__________________
Cada vez que solucionas los problemas de alguien que no se esfuerza, piensa en que el día de mañana puede llegar a ser tu compañero de trabajo, o peor, tu jefe.
  #5 (permalink)  
Antiguo 02/09/2014, 02:01
Avatar de Profesor_Falken  
Fecha de Ingreso: agosto-2014
Ubicación: Mountain View
Mensajes: 1.323
Antigüedad: 9 años, 8 meses
Puntos: 182
Respuesta: Conexión remota a mysql

Buenas

Si abres MySQL veras que tienes una tabla en la base de datos 'mysql' llamada 'users'.

Debes crear un nuevo registro con el user/host deseados para que tengan permisos de acceder a Mysql remotamente (por defecto solo viene habilitado con el host localhost). Para establecer el host tambien puedes utilizar wildcards como % por ejemplo.

Un saludo
  #6 (permalink)  
Antiguo 02/09/2014, 06:01
Avatar de raydelpq94  
Fecha de Ingreso: abril-2014
Ubicación: Arroyo Naranjo
Mensajes: 23
Antigüedad: 10 años
Puntos: 0
Respuesta: Conexión remota a mysql

Cree un usuario y le puse como servidor mi dirección IP local y de este modo me funciona pero solo en mi máquina, cuando copie la aplicación para probarla en otra PC no me funcionó. Que puede ser esto
  #7 (permalink)  
Antiguo 02/09/2014, 06:15
Avatar de raydelpq94  
Fecha de Ingreso: abril-2014
Ubicación: Arroyo Naranjo
Mensajes: 23
Antigüedad: 10 años
Puntos: 0
Respuesta: Conexión remota a mysql

Profesor_Falken, usted tenía razón, mi problema estaba en los usuarios. Cree un usuario mysql y le puse como servidor % (cualquiera) y de esta forma se me conecta desde cualquier PC. Les reitero las gracias por la ayuda.

Etiquetas: mysql, remota, string
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 01:53.