Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Providers (https://www.clubdelphi.com/foros/forumdisplay.php?f=10)
-   -   Conexión ADO MySQL (https://www.clubdelphi.com/foros/showthread.php?t=41627)

Maibok 21-03-2007 03:42:14

Conexión ADO MySQL
 
Hola a todos, estoy haciendo una aplicación que trabaja con delphi6 y mysql.

Se conecta a mysql mediante ado.

El caso es que hasta hoy que me surgió una duda trabaja perfectamente. Me conecto con estos parámetros en la conecctionString:

Provider=MSDASQL.1
Driver=MySQL ODBC 3.51 Driver
Host=127.0.0.1
DataBase=seguridad
Port=3306
User=root
Password=<miPassword>

Como he dicho hasta hoy me funcionaba, incluso cuando conectaba al servidor de mysql de un amigo también me funcionaba. El problema está en que hoy decidí mandarle el programa a mi amigo para que se conectara a mi ordenador (mi servidor MySQL) y a él no le deja. Le da error al intentar conectar (poniendo mi ip en el host lógicamente y mis datos).

He pensado que podría ser problema suyo debido a que no tenga el proveedor MSDASQL.1 para poder conectar, pero no estoy seguro. Me podríais decir de qué puede ser??? Y si es del proveedor que uso, de dónde podría bajarlo él para que funcionara??? (con el MDAC 2.8 llegaría para usar el MSDASQL.1???)


Y ya puestos. Al utilizar el programa en local en mi ordenador al poner en el host "localhost" o "127.0.0.1" me funciona perfectamente, pero no es así si pongo la ip que tengo en este momento. De qué puede ser esto???

Muchas gracias por la atención y ayuda

roman 21-03-2007 05:43:14

No podría asegurarlo, pero me suena a que es un problema de derechos. Da la impresión de que el servidor de MySQL en tú pc, sólo da derechos a conectarse desde localhost (127.0.0.1).

// Saludos

poliburro 21-03-2007 18:43:18

Son dos problemas amigo mio,

el primero tiene que ver con ADO. Recuerda que para conectarte a tu servidor mysql debiste dar de alta la conexion Odbc. Esto deberás hacerlo
en cada equipo cliente desde el que te conectes.


El segundo tiene que ver con los permisos en mysql,

Tienes que permitir que el usuario pueda conectarse desde cualquier host.
para ello debes ejecutar lo siguiente en la consola de tu servidor mysql;


Use Mysql;
GRANT ALL PRIVILEGES ON *.* TO 'root@%' IDENTIFIED BY "PASSWORD";
FLUSH Privileges;
Exit;

suerte

Caral 21-03-2007 19:31:54

Hola
Este ejemplo lo reparto como churros.
Aqui esta: ftp://196.40.62.225/Conexion%20Bases%20Datos.Zip
Enseña en parte como conectarse a mysql, con zeos y ado.
Tal vez te sirva.
Saludos

Maibok 21-03-2007 22:09:15

Muchas gracias a todos.

El ODBC de MySQL para windows lo tengo instalado en todos los ordenadores desde los que intento acceder a mi servidor. El problema estaba en que a mi ordenador sólo se podía conectar como root desde local y no desde cualquier host.

Ya lo he arreglado. Gracias otra vez

WarlockIII 09-11-2011 14:33:05

Conexion Remota con ADO y MYSQL
 
para las personas que han tenido el problema de conexion en forma remota es por por una cuestion de redes no piensen que su programa falla o algo por estilo, yo comence el dia de ayer a trabajar con delphi, pero programo hace ya mucho tiempo, en fin. Desarrolle un programa que necesitaba conectarse con una sede en otra localidad y no sabia como hacerlo ya que siempre me arrojaba mysql error 10006 o errores similares, el problema fue resuelto reconfigurando el router, debes crear una cuenta en dyndns.com y eso te hara que tu direccion ip la que es vista por la internet (es dinamica) cambie a estatica, por ejemplo pasaria de ser algo como 200.222.183.24 a desarrollodelphi.dyndns-web.com ( cabe destacar que desarrollodelphi.dyndns-web.com, que esta parte que esta subrayada puede ser seleccionada por dyndns cuenta con un sin numero de alias para trabajar) luego configuras el router para que los equipos que se quieran conectar se redirijan a una ip en particular, por ejemplo tendrias que configurar como ip estatica tu computadora y dejarla como 192.168.0.110 y abrir el puerto 3306 o si no te quieres complicar usas dnz para abrir todos los puertos, luego en el administrador de mysql tienes que crear un usuario con el comodin % para que otra maquina ya sea de cualquier parte del mundo se pueda conectar con tu pc, si no quieres eso y solo quieres que un determinado grupo de personas se conecte le asignas un rango ejemplo 200.222.183.% o 200.222.% para que asi las personas que fluctuen en este rango solo se puedan conectar, hare un tutorial para que las personas que no saben realizar esta conexion lo puedan realizar ya que los manuales o tutoriales que he visto son muy basicos y no te indican como se puede acceder a tu maquina solo te mencionan como hacer la conexion con tu router y nada mas. Espero les haya servido de ayuda a otras personas, un saludo y un abrazo hasta pronto.

Casimiro Notevi 09-11-2011 14:39:47

Bienvenido a clubdelphi, WarlockIII, ¿ya leiste nuestra guía de estilo?, gracias por tu colaboración.

kapcomx 26-11-2011 00:42:29

mejor usa zeos
 
yo te recomiendo que uses ZEOS en lugar del ADO para tranajar con MYSql


La franja horaria es GMT +2. Ahora son las 01:57:24.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi