Foros del Web » Programación para mayores de 30 ;) » Bases de Datos General » Mysql »

Conexión a bbdd Mysql

Estas en el tema de Conexión a bbdd Mysql en el foro de Mysql en Foros del Web. Buenas, estoy intentando conectarme a una bbdd mysql que esta alojada en un servidor linux a trvés de una aplicación que estoy diseñando en Visual ...
  #1 (permalink)  
Antiguo 22/11/2011, 02:50
 
Fecha de Ingreso: mayo-2011
Mensajes: 21
Antigüedad: 12 años, 10 meses
Puntos: 0
Conexión a bbdd Mysql

Buenas, estoy intentando conectarme a una bbdd mysql que esta alojada en un servidor linux a trvés de una aplicación que estoy diseñando en Visual Studio (C#). Para realizar al conexión utilizo el siguiente código:

MySqlConnection con = null;

string path1 = "server=192.168.1.99; port=3306; uid=root; pwd='desarrollo123'; dataBase=bd004;";

con = new MySqlConnection(path1);

con.Open();


He comprobado que el puerto está abierto en el servidor linux (nmap localhost)

El error que me reporta es el siguiente:

-$exception {"Unable to connect to any of the specified MySQL hosts."} System.Exception {MySql.Data.MySqlClient.MySqlException}

+InnerException {"No se puede establecer una conexión ya que el equipo de destino denegó expresamente dicha conexión 192.168.1.99:3306"} System.Exception {System.Net.Sockets.SocketException}

ErrorCode 10061 int



¿Dónde puede estar el problema?

Gracias de antemano y espero vuestra ayuda.
  #2 (permalink)  
Antiguo 22/11/2011, 02:56
Avatar de azimutisima  
Fecha de Ingreso: mayo-2011
Mensajes: 107
Antigüedad: 12 años, 10 meses
Puntos: 14
Respuesta: Conexión a bbdd Mysql

Te puedo decir que la mia en vb.net 2005 es:

c_Conect = "DRIVER={MySQL ODBC 5.1 Driver};SERVER=XXX.XXX.XXX.XXX;PORT=3306;DATABASE= NombreBD;USER=Usuario;PASSWORD=Pass;OPTION=3"

Claro que yo me conecto por ODBC.

Comprueba que en tu equipo no haya tampoco ningun firewall cortando el acceso.
__________________
Si te gusto mi respuesta anímame a continuar dandome un voto.
  #3 (permalink)  
Antiguo 22/11/2011, 03:38
 
Fecha de Ingreso: mayo-2011
Mensajes: 21
Antigüedad: 12 años, 10 meses
Puntos: 0
Respuesta: Conexión a bbdd Mysql

Ya he comprobado el tema del firewall. ¿Qué tendría que hacer apra conectarme por odbc, a parte de usar el código que me has comentado?
  #4 (permalink)  
Antiguo 22/11/2011, 10:16
Avatar de azimutisima  
Fecha de Ingreso: mayo-2011
Mensajes: 107
Antigüedad: 12 años, 10 meses
Puntos: 14
Respuesta: Conexión a bbdd Mysql

Connector/ODBC
__________________
Si te gusto mi respuesta anímame a continuar dandome un voto.
  #5 (permalink)  
Antiguo 22/11/2011, 10:36
Avatar de gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 16 años, 4 meses
Puntos: 2658
Respuesta: Conexión a bbdd Mysql

Si estás programando en .Net, no uses ODBC. Usa el Conector que utilizas y revisa los permisos del usuario para conexión remota.
En .Net, usar ODBC para trabajar con MySQL es lo mismo que usar muletas para caminar: Por mejor que lo hagas, no funcionará igual de bien.
Además, si el porblema es de permisos de usuario, usar ODBC no resolverá nada.
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)
  #6 (permalink)  
Antiguo 22/11/2011, 10:36
 
Fecha de Ingreso: mayo-2011
Mensajes: 21
Antigüedad: 12 años, 10 meses
Puntos: 0
Respuesta: Conexión a bbdd Mysql

He instalado y configurado este componente en Windows y cuando le hago la comprobación (botón Test) me reporta el mismo código de error que comenté al principio:

Conection Failed: [HY000][MySQL][ODBC 5.1 Driver] Can`t conect to MySQL server on '192.168.1.99' (10061)

¿Dónde puede estar el problema?
  #7 (permalink)  
Antiguo 22/11/2011, 10:40
Avatar de gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 16 años, 4 meses
Puntos: 2658
Respuesta: Conexión a bbdd Mysql

Permisos de usuario.
Tira el ODBC a la basura, ve a la máquina remota y asígnale permisos de conexión remota a ese usuario.
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)
  #8 (permalink)  
Antiguo 22/11/2011, 10:42
 
Fecha de Ingreso: mayo-2011
Mensajes: 21
Antigüedad: 12 años, 10 meses
Puntos: 0
Respuesta: Conexión a bbdd Mysql

Cita:
Iniciado por gnzsoloyo Ver Mensaje
Si estás programando en .Net, no uses ODBC. Usa el Conector que utilizas y revisa los permisos del usuario para conexión remota.
En .Net, usar ODBC para trabajar con MySQL es lo mismo que usar muletas para caminar: Por mejor que lo hagas, no funcionará igual de bien.
Además, si el porblema es de permisos de usuario, usar ODBC no resolverá nada.
De acuerdo, ya había leido que no eran muy compatibles .NET o odbc....

Con respecto respectos a los permisos de usuario que me comentas, no entiendo relmente a que te refieres, ¿me podrías aclarar un poco esto?

Gracias!!
  #9 (permalink)  
Antiguo 22/11/2011, 11:07
Avatar de gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 16 años, 4 meses
Puntos: 2658
Respuesta: Conexión a bbdd Mysql

El tema es largo. Los usuarios en MySQL no sólo se identifican por su username, también por su host de conexión, es decir, la PC desde donde se realiza la conexión.
El formato completo del username es nombre@host. "host" es la IP desde donde el usuario está intentando la conexión, y en tu caso el usuario no fue creado con indicación de cuál es su host, por lo que asume que debería hacerlo localmente y echaza las conexiones remotas.
Como MySQL no está reconociendo el host asignado al user, no permitirá la conexión, no importa lo que hagas.

Para que un user pueda conectarse en forma remota debe indicarse desde que host al momeo de crearlo, o bien hacerlo con el host "%", que significa permisos remotos sin distinción de host.
Otra posibilidad es que el usuario haya sido creado, pero que no se le hayan otorgado permisos de trabajar, es decir, que pueda usar SELECTs, o INSERTs, o nada. En ese caso, como no puede hacer nada, el login se inicia y termina instantaneamente.

Los permisos del usuario se conceden con GRANT y se eliminan con REVOKE.

Lee el manual de referencia sobre el tema. Hay un capítulo entero dedicado a esto.
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)
  #10 (permalink)  
Antiguo 23/11/2011, 03:48
 
Fecha de Ingreso: mayo-2011
Mensajes: 21
Antigüedad: 12 años, 10 meses
Puntos: 0
Respuesta: Conexión a bbdd Mysql

Buenas, he creado un nuevo usuario con el host "%" y además le he asignado todos los permisos para trabajar disponibles. Todo esto a través de PhpMyAdmin instaldo en el servidor al que me quiero conectar.

Además de esto he accedido al fichero /etc/mysql/my.cnf y he añadido la linea

bind-adress = 0.0.0.0

y en el fichero /etc/hosts.allow la siguiente

mysqld: all

El problema es que sigue dándome el mismo error.

¿Alguna idea?
  #11 (permalink)  
Antiguo 23/11/2011, 04:23
Avatar de gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 16 años, 4 meses
Puntos: 2658
Respuesta: Conexión a bbdd Mysql

Volvamos al principio:
Cita:
No se puede establecer una conexión ya que el equipo de destino denegó expresamente dicha conexión 192.168.1.99:3306
Este mensaje no lo envía MySQL (mea culpa, no lo miré detenidamente). Lo envía la red (una System.Net.Sockets.SocketException es propia de la red, no de MySQL) e implica que lo que no te permite conectarte es la propia PC remota.

¿Hay firewalls, routers, o algún otro software de control de accesos? ¿La PC remota tiene liberado el puerto?
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)
  #12 (permalink)  
Antiguo 24/11/2011, 04:55
Avatar de azimutisima  
Fecha de Ingreso: mayo-2011
Mensajes: 107
Antigüedad: 12 años, 10 meses
Puntos: 14
Respuesta: Conexión a bbdd Mysql

Cita:
Iniciado por gnzsoloyo Ver Mensaje
Si estás programando en .Net, no uses ODBC. Usa el Conector que utilizas y revisa los permisos del usuario para conexión remota.
En .Net, usar ODBC para trabajar con MySQL es lo mismo que usar muletas para caminar: Por mejor que lo hagas, no funcionará igual de bien.
Además, si el porblema es de permisos de usuario, usar ODBC no resolverá nada.
mmm interesante, la verdad es que esta aplicacion de la que hablo la heredé y no habia trabajado antes con .net y mysql voy a investigarlo.

Gracias por el tip.
__________________
Si te gusto mi respuesta anímame a continuar dandome un voto.
  #13 (permalink)  
Antiguo 24/11/2011, 06:27
Avatar de gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 16 años, 4 meses
Puntos: 2658
Respuesta: Conexión a bbdd Mysql

¿Puedes "ver" el otro equipo desde tu PC?
Es decir: ¿Puedes acceder a él desde el Explorador de Windows? ¿Ver sus carpetas públicas?
¿Si haces un ping ese equipo desde simbolo de sistema, ¿responde?

Podrías intentar usar la aplicación de consola mysqladmin.exe y enviar un ping al MySQL, a ver si ese servidor está escuchandote.
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)
  #14 (permalink)  
Antiguo 29/11/2011, 05:05
 
Fecha de Ingreso: mayo-2011
Mensajes: 21
Antigüedad: 12 años, 10 meses
Puntos: 0
Respuesta: Conexión a bbdd Mysql

Buenas, si hago un ping desde el cmd me responde perfectamente. Y también descarto problemas de firewall físico porque las dos máquinas que intento conectar pertenecen a la red local.

No entiendo muy bien lo que me comentas sobre el mysqladmin.exe, me podrías detallar como proceder?

También comentaros que he probada a instalarme mysql en local y puedo acceder a las bddd que creo sin problemas....

¿Alguna idea nueva con estos detalles?
  #15 (permalink)  
Antiguo 03/01/2013, 16:48
 
Fecha de Ingreso: octubre-2012
Mensajes: 5
Antigüedad: 11 años, 5 meses
Puntos: 0
Respuesta: Conexión a bbdd Mysql

Porfavor vuelvan a reabrir el tema, tengo el mismo problema y quede donde mismo quedo jmleal9
  #16 (permalink)  
Antiguo 03/01/2013, 16:50
Avatar de gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 16 años, 4 meses
Puntos: 2658
Respuesta: Conexión a bbdd Mysql

Si tienes un problema de programación, postea en el foro correspondiente. De lo contrario abre un tema propio y explica detalladamente lo que intentaste y lo que obtuviste.
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)

Etiquetas: bbdd
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.
Tema Cerrado




La zona horaria es GMT -6. Ahora son las 06:34.