Hola a todos, estoy programando una aplicacion que quiero que se conecte a un servidor de base de datos Mysql en un equipo con debian,
para ello estoy utilizando el driver MySQLDriverCS.
Cuando intento abrir la conexion me da la siguiente excepcion: "MySQLDriverCS Exception: MySQLDriverCS Error: can't connect.Access denied for user 'diego'@'DIEGOLP1' (using password: YES)"
Creo que puede ser un problema de configuracion en mi servidor Mysql por eso lo publico aqui.
Muchas gracias.
Saludos.
Emmm supongo que estas usando un String de Conexion algo así:
Server=myServerAddress;Database=myDataBase;Uid=myUsername;Pwd=myPassword;
Mirad: http://www.connectionstrings.com/mysql
Indentad:
MySQLDriverCS.MySQLConnectionString connString = new MySQLDriverCS.MySQLConnectionString("SERVER", "DB", "USER", "PWD");
MySQLDriverCS.MySQLConnection conn = new MySQLDriverCS.MySQLConnection(cs.AsString);
Fuente: http://www.dotnethell.it/forum/messages.aspx?ThreadID=18180
Si lo anterior no te resuelve nada.
* Tienes en Debian el puerto 3306 abierto?
bash$ netstat tunap | grep 3306
Corresponde al servidor MySQL???
No tienes ninguna regla de firewall remoto ni local impidiendo el acceso?
bash$ iptables -L
En el MySQL remoto tienes acceso como root? porque tienes que confirmar que target tiene el usuario diego (Target es lo que viene despues de @) para poder averiguar esto, necesitas o hablar con el encargado de manejar MySQL o acceder tu como root y verificar que target tiene Diego:
mysql> select host, user from mysql.user where user = 'diego'
Donde host es el target, si por defecto tiene % es que cualquier IP de cualquier parte puede conectarse con ese usuario a MySQL, si dice 'localhost' quiere decir que diego solo puede conectarse localmente digase en el servidor Debian. Si quieres configurar proteccion a esto podrias indicarle que solo tu IP puede conectarse con diego... pero para eso hay que confirmar que target tienes primero.
Muchas gracias a todos por responder.
Ya lo solucione, el problema era que el usuario con el que me intentaba conectar solo estaba configurado para conectarme de forma local, lo cambie a que me permitiera conectar desde cualquier lado y listo.
De nuevo muchas gracias a todos. ;D
Entonces era eso Diego??? el usuario tenia el target 'localhost' en vez de '%' que es todo el mundo???
Asegurate, por seguridad mas que todo de cambiar ese target '%' por tu IP de tu maquina, porque si dejas el '%' quiere decir que todo el mundo o cualquiera de donde sea podra conectarse de forma remota a tu MySQL si conoce tu usuario y contrasena digo.
Un saludo :D
Si ^TiFa^ era eso :)
Si ya lo cambie por mi ip, muchas gracias por todo.
Saludos.
Cita de: diego_lp en 18 Enero 2010, 03:30 AM
Muchas gracias a todos por responder.
Ya lo solucione, el problema era que el usuario con el que me intentaba conectar solo estaba configurado para conectarme de forma local, lo cambie a que me permitiera conectar desde cualquier lado y listo.
De nuevo muchas gracias a todos. ;D
Diego, como cambiaste esa onfiguracion? Ando en ese dilema!!!