Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Conexión con bases de datos (https://www.clubdelphi.com/foros/forumdisplay.php?f=2)
-   -   Conexion con ZeosLib a Mysql Remoto (https://www.clubdelphi.com/foros/showthread.php?t=86214)

ander 01-07-2014 15:14:28

Conexion con ZeosLib a Mysql Remoto
 
Hola a todos.

Tengo una base de datos remota y ejecutando codigo PHP consigo conectarme sin problemas.


<?php
//CONFIGURACION DE CONEXION A BD
$l_user="Administrador";
$l_passwd='BP34Jk_##9l';
$l_host="82.220.208.124";
$l_bd="pepe_app";
//conectar a la BD
$link=mysqli_init();
mysqli_ssl_set($link,'client-key.pem','client-cert.pem','ca-cert.pem',NULL,NULL);
mysqli_real_connect($link,$l_host,$l_user,$l_passwd,$l_bd,NULL,NULL,MYSQLI_CLIENT_SSL);
?>

En cambio si intento conectarme con los componentes de ZeosLib desde delphi XE2 al remoto ( local Ok )...

procedure TForm1.Button1Click(Sender: TObject);
begin
Zconnection1.connected:=False;
with ZConnection1 do
begin
User := 'Administrador';
Password :='BP34Jk_##9l';
Database := 'pepe_app';
Protocol :='mysql-5';
HostName := '82.220.208.124';
Port := 3306;
LibraryLocation:= 'C:\Zeos_Pru\Libreria_Mysql\libmysql51.dll';
Properties.clear;
Properties.Add('MYSQL_SSL=TRUE');
Properties.Add('MYSQL_SSL_CA=C:\Zeos_Pru\certi_MySql_Admin\ca-cert.pem');
Properties.Add('MYSQL_SSL_CERT=C:\Zeos_Pru\certi_MySql_Admin\client-cert.pem');
Properties.Add('MYSQL_SSL_KEY=C:\Zeos_Pru\certi_MySql_Admin\client-key.pem');
Connect;
end;


Project ......exe raised exception classs EZSQLException width message 'SQL Error : Can't connect to MySQL server on '82.220.208.124' (10060).


Me podría alguien asesorar o decirme que es lo que falta o sobra, en el código??
Me imagino, que será algo de los certificados ,pero no sé que es lo que tengo que hacer,por mucho que miro en la red.

Muchas gracias

Casimiro Notevi 01-07-2014 15:17:53

Recuerda poner los tags al código fuente, ejemplo:



Gracias :)

giulichajari 01-07-2014 21:04:37

Fata servicio
 
Cita:

Empezado por ander (Mensaje 478538)
'SQL Error : Can't connect to MySQL server on '82.220.208.124' (10060).

Me podría alguien asesorar o decirme que es lo que falta o sobra, en el código??
Me imagino, que será algo de los certificados ,pero no sé que es lo que tengo que hacer,por mucho que miro en la red.

Muchas gracias

el error que mencionas es que no esta corriendo el servicio de mysql. Ve al Administrador de Tareas (Ctrl+Alt+Supr) y fijate si tenes "mysqld.exe" corriendo. De lo contrario ve a Panel de Control->Herramientas administrativas->servicios->MYSQL56->Iniciar.
Te pregunto:
Es un webservice lo que has hecho? No sabes si con los componentes que trae Delphi XE2 se podria hacerlo?

ander 02-07-2014 08:36:39

Como verás ,por mi pregunta ,no tengo mucha idea de como conectarme con delphi XE2 a la base de datos remota.
Por lo que he podido leer en la red ,la única manera factible de conectarse a un servidor con conexion SSL ( Secure Socket Layer ) es por medio de los componentes ZeosLib y es lo unico que he probado. También he visto que hay conexiones con ODBC,ADO,DBExpress pero sin poder ubicar las conexiones a los certificados SSL.
Si no necesitas certificados lo puedes hacer con DBExpress http://stackoverflow.com/questions/7...sing-dbexpress

En cuanto al error... está corriendo " MySQL55" en los servicios,no el "MySQLd" pero me imagino que es el servivio de MySQL.

Gracias.

giulichajari 02-07-2014 23:41:18

Cita:

Empezado por ander (Mensaje 478573)
Como verás ,por mi pregunta ,no tengo mucha idea de como conectarme con delphi XE2 a la base de datos remota.
Por lo que he podido leer en la red ,la única manera factible de conectarse a un servidor con conexion SSL ( Secure Socket Layer ) es por medio de los componentes ZeosLib y es lo unico que he probado. También he visto que hay conexiones con ODBC,ADO,DBExpress pero sin poder ubicar las conexiones a los certificados SSL.
Si no necesitas certificados lo puedes hacer con DBExpress http://stackoverflow.com/questions/7...sing-dbexpress

En cuanto al error... está corriendo " MySQL55" en los servicios,no el "MySQLd" pero me imagino que es el servivio de MySQL.

Gracias.

mysqld.exe es un proceso del administrador de tares en la pestaña procesos deberia estar. y mysq el servicio ese debe ser una version vieja que has instalado. El mio dice MYSQL56.

La libreria zeos hay que usarla porque escogimos mysql como motor de base de datos, porque otros componentes de embarcadero no lo permiten, por lo menos a traves de internet, ya que he desarrollado aplicaciones monousuario de una sola maquina y funcionan.

Saludos

ander 03-07-2014 12:07:17

Ya he podido solucionar el problema.
Aunque sea de tontos ,tenia el puerto :3306 capao, para la dirección IP específica, del ordenador donde trabajaba.
No había ningún otro tipo de problema...ni certificados ni procesos de administrador.
Gracias por todo y perdonar.


La franja horaria es GMT +2. Ahora son las 19:31:06.

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