Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Firebird e Interbase (https://www.clubdelphi.com/foros/forumdisplay.php?f=19)
-   -   Connection rejected by remote interface (https://www.clubdelphi.com/foros/showthread.php?t=84997)

bulc 12-01-2014 22:28:48

Connection rejected by remote interface
 
Hago la conexión con un portátil y falla. En cambio en el sobremesa nunca pasó.
Se produce intentando conectar un TIBDataBase1. Uso el Editor del mismo y escribo los siguientes datos. Son los mismos que en el otro ordenador. Pero aquí el Test connection falla.
Connection:= Remote
Server := localhost
Protocol := TCP
Port: = lo dejo en blanco
User_Name := SYSDBA
Password: masterkey
etc, etc.
Dejo en blanco el PORT y todo el lado derecho de la ventana del editor;(1.- Encrypted Connection, 2.-Server Public File 3.-Clieent Cert File 4.- etc...
PD.: Insertaría un gráfico pero no sé como hacer para rellenar el URL que pide la ventana de "Insertar Imagen".
Se produce el error : "Connection rejected by remote interface".
¿Alguien sabe algo?
Muchas gracias. Es desmoralizante una cosa así.
Bulc

cloayza 13-01-2014 16:27:07

A ver si logro ayudarte...

El escenario:
Supongo que estan en red ambos equipos.
1 PC escritorio, tiene instalado Interbase/Firebird (No indicas cual...) al cual llameré PCServidor

PCServidor
  • Connection:= Remote
  • Server := localhost
  • Protocol := TCP
  • Port: = 3050
  • User_Name := SYSDBA
  • Password: masterkey

1 Notebook (Este no tiene el servidor de base de datos), al cual llameré PCCliente
PCCliente
  • Connection:= Remote
  • Server := IP_PCServidor
  • Protocol := TCP
  • Port: = 3050
  • User_Name := SYSDBA
  • Password: masterkey

Como PCCliente está accesando a la base de datos que esta sirviendo PCServidor requieres indicarle la IP del PCServidor.

Saludos cordiales...

bulc 13-01-2014 17:12:46

Hola cloayza. Verás uso delphiXE3 y Firebird_2_5. No se trata de conectar portátil y PC de mesa "entre sí". Si no que no me funcioana la conexión en dos pc's de tres. El que funciona recuerdo que tuve que desinstalar InterBase y volver a instalar Firebird.
Ah! y también que el sistema operativo de los dos que fallan en Windows 8 de 64 bits.
De todos modos, ¿se puede conectar un pc portátil (cliente sin Firebird), con otro que contenga Firebird?
Esto me escama mucho. Me recuerda a cuando usaba Paradox.
Muchas gracias por tu tiempo. Y hasta pronto.
bulc

Casimiro Notevi 13-01-2014 19:33:32

Todos deben tener firebird, aunque los clientes no necesitan el servidor, solamente el "cliente", fbclient.dll

bulc 13-01-2014 21:17:32

Connection rejected by remote interface, pistas.
 
He hallado alguna pista aquí: http://forums.devart.com/viewtopic.php?f=26&t=25839
Dan como solución colocar ésto: SQLConnection.Params.Values['VendorLib'] := 'fbclient.dll';
Pero yo no uso SQLConnection.

Yo uso IBDataBase, IBTransaction, DataSetProvider, IBQuery, ClientDataSet y DataSource.
Me pregunto en cuál de estos componentes se coloca ese acceso a la librería fbclient.dll. Además está en inglés y no me aclaro.
¿Qué me aconsejáis?
Gracias.
bulc

Casimiro Notevi 14-01-2014 00:52:51

Yo no entiendo el problema que tienes, creo que te estás liando tú solo.
En los equipos clientes debes instalar solo el cliente de firebird.

ecfisa 14-01-2014 01:42:13

Hola bulc.

La verdad que la cosa es muy simple... No es necesario compartir recursos ni otra acción, solamente en el servidor habilita el el puerto 3050 desde el firewall:Por las dudas verifica la correcta configuración del puerto de escucha:
  1. Edita el archivo: ...Firebird\Firebird_2_5\firebird.conf, busca la línea RemoteServicePort= y verifica que su valor sea: 3050, de no ser así modificalo y guarda.
  2. Paso siguiente, reiniciá el servicio de Firebird: Inicio -> Ejecutar: CMD (Enter) -> net stop FirebirdServerDefaultInstance (Enter) -> net start FirebirdServerDefaultInstance (Enter) -> Exit (Enter)
(Estos últimos dos pasos son claramente innecesarios si el puerto no fue cambiado previamente)

En los clientes, tál como ya te han comentado: "En los equipos clientes debes instalar solo el cliente de firebird."

Desde Delphi:
Código Delphi [-]
  with IBDatabase1 do
  begin                    //o 'IP_SERVIDOR:...
    IBDatabase.DatabaseName := 'NOMBRE_SERVIDOR:C:\Carpeta1\Carpeta2\...\BASEDATOS.FDB';
    Params.Clear;
    LoginPrompt:= False;
    Params.Add('user_name=sysdba');
    Params.Add('password=masterkey');
    try
      Open;
    except
      raise Exception.Create('No se puede establecer la conexión con la base de datos');
      Application.Terminate;
    end;
  end;

Saludos :)

RONPABLO 14-01-2014 06:19:41

Los IBX necesitan de la gds32.dll pero firebird instala fbclient.dll, de tal forma es posible que con crear una copia de fbclient.dll y renombrarla gds32.dll y dejarla al lado de el ejecutable soluciones el problema... También en algunos equipos viejos he tenido que instalar completamente el firebird en el equipo cliente.

Casimiro Notevi 14-01-2014 10:21:32

Cita:

Empezado por RONPABLO (Mensaje 471664)
... fbclient.dll y renombrarla gds32.dll

Si no lo han cambiado, eso es algo que hace automáticamente el instalador de firebird, marcando un checkbox. Pero hay que leer lo que se instala, y no solamente dar "siguiente", "siguiente"... :D

bulc 14-01-2014 10:48:01

Cita:

Empezado por RONPABLO (Mensaje 471664)
Los IBX necesitan de la gds32.dll pero firebird instala fbclient.dll, de tal forma es posible que con crear una copia de fbclient.dll y renombrarla gds32.dll y dejarla al lado de el ejecutable soluciones el problema... También en algunos equipos viejos he tenido que instalar completamente el firebird en el equipo cliente.

Por si sirve de algo: No puedo entrar en el servidor Firebird del Panel de Control. Está bloqueado.... ¿Qué pasa aquí?

bulc 14-01-2014 10:55:41

Hola cloayza, Egfisa, Casimiro y el resto:
No estoy en conexión: Cliente --> Servidor Remoto, estoy tan sólo en LocalHost, osea en la misma máquina. Una sola base de datos FDB y una única Tabla.
He desinstalado InterBase. No puedo acceder a Firebird del Panel de Control. El atasco está en TIBDataBase (conexión con el editor).
Mírate lo del foro en inglés CITADO ANTES a ver si se te enciende alguna bombilla a tí. La mío se fundió ya. Soy un novato.
He revisado los ficheros de Windows (Win-8) y aparecen dos "FBCLIENT.DLL" pero ningún "DGS32.DLL".
¿Puede dar alguna pista?
bulc

Casimiro Notevi 14-01-2014 11:16:48

Desinstala interbase y firebird.
Buscas gds32.dll y fbclient.dll y los borras.
Instalas firebird, completo.
Luego sigue este pequeño tutorial.

bulc 14-01-2014 12:07:29

Cita:

Empezado por Casimiro Notevi (Mensaje 471675)
Desinstala interbase y firebird.
Buscas gds32.dll y fbclient.dll y los borras.
Instalas firebird, completo.
Luego sigue este pequeño tutorial.

De acuerdo. Un punto: al desinstalar Firebird esos dos archivo -lo he comprobado- ya se borran. Hay dos y están dentro de Program Files\Firebird\Firebird_2_5.
En dos subdirectorios de éste último; el "\bin" y el "\wow".
Total, he hecho lo que dices. Desinstalo Interbase y Firebird. Reinstalo Firebird 64 bits para Windows 8.
Luego intento la conexión a la BaseDeDatos de nuevo, -repaso los parámetros de conexión con cuidado- y nada. Aparece al pulsar "TEST":
"Connection rejected by remote interface". Seguiré en ello.
¿Queda algo más que se pueda hacer?
Gracias, Casimiro.
AddText: He visto que cambia el error. El "TEST" me dice:
"Unable to complete network request to host: LOCALHOST:3050". ¿Tengo que cambiar el puerto? ¿Qué opinas?
Uso los parametros Connection=Remote; Protocol=TCP; Server= localhost; Path= C:\.... FILE.DBF; User=SYSDBA; Password= etc.
Gracias. bulc

Casimiro Notevi 14-01-2014 12:40:15

¿firewall?


¿has seguido el tutorial?

bulc 15-01-2014 12:34:59

Si. He hecho todo lo que sigue
 
He hecho todo eso. Desinstalé InterBase (no lo uso) y Firebird. Luego lo vuelvo a instalar. Estoy en Windows 8 (64).
Releí todos los pasos del manual que aconsejas.
Observo que el Firebird Server Manager (del Panel de Control) no se abre y sí lo hace en Window 7.
Voy a usar el fbclient.dll del Firebird correcto del Windows 7 a ver qué pasa.
He repasado minuciosamente los parámetros de ubicación del fichero .FDB en el editor de TIBDataBase antes de hacer "Test" a la conexión.
Eso es todo por ahora.
Gracias.

MAXIUM 18-08-2014 20:10:23

Toma fbclient.dll, has una copia. Renombra esta copia como gds32.dll.

Toma ese gds32.dll y muevelo a a C:\Windows\System32 en caso de que Windows sea de 32bits o a C:\Windows\SysWOW64 en el caso de de que sea de 64bits.


La franja horaria es GMT +2. Ahora son las 15:03:57.

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