![]() |
![]() |
| Paypal | FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
|||||||
| Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
![]() |
|
|
Herramientas | Buscar en Tema | Desplegado |
|
#1
|
|||
|
|||
|
Problema de usuario al conectar a servidor remoto (Windows 7)
Hola.
De antemano gracias al que pueda ayudarme. Les comento. Se trata de un problema con un programa que hice hace tiempo y que se conecta a una base de datos Interbase 6 (la versión libre). El programa funciona en red y originalmente fue instalado en las siguientes condiciones:
Hasta ahora he descartado los siguientes problemas:
|
|
#2
|
||||
|
||||
|
Primero prueba a conectar mediante la IP y no con el nombre del servidor.
Por ejemplo: 192.168.1.1:C:\Datos\BaseDeDatos.GDB Puede que esté tratando de acceder directamente al archivo y no al servicio de base de datos. No deberías poder acceder al archivo. NUNCA. La carpeta de datos debe ser invisible al grupo de trabajo. También asegúrate de que el firewall del equipo que hace de servidor tenga el puerto TCP-3050 abierto (si no has modificado la instalación de Interbase). Prueba a desactivar completamente el Firewall primero y si es eso ya luego restringes a solo el puerto. |
|
#3
|
|||
|
|||
|
Gracias duiloisola por responder el mensaje, pero te comento:
|
|
#4
|
||||
|
||||
|
Prueba a poner nuevamene el password a "masterkey". Esto lo realizas mediante GSEC.
Entra en un terminal y luego de ir a la carpeta bin ejecuta gsec. Código:
gsec -user sysdba -pass xyz -mo sysdba -pw masterkey Una vez que tengas la clave master-key prueba a conectarte desde los ordenadores cliente de la forma más simple posible: generando una conexión mediante ISQL. Código:
isql test.fdb -u sysdba -p masterkey |
|
#5
|
|||
|
|||
|
He aplicado los cambios que me comentas y te explico lo que me ha pasado:
En el equipo que hace de servidor he modificado la password a "masterkey" y me he conectado con isql sin problemas. Luego, he ido al equipo cliente y también me he conectado con isql sin problemas. Hasta ahí todo perfecto. Luego, he vuelto a cambiar la password en el servidor y me he conectado con isql sin problemas. La password que puse no es complicada y de 8 caracteres (son 8 caracteres entre minúsculas y números). Luego he ido al equipo cliente y no se ha podido conectar. Asi que intenté que se conectara con la password "masterkey" y sí se conectó (???). El equipo que hace de servidor es el 192.168.0.152. Te muestro lo que salió pantallazo: Cita:
Por cierto, gracias por tu respuesta Última edición por Casimiro Noteví fecha: 16-07-2014 a las 11:12:52. |
|
#6
|
|||
|
|||
|
Actualizo la información...
Finalmente, decidí volver a crear el ejecutable, esta vez con la pass masterkey e hice el cambio respectivo en el servidor. Comprobé que todo fuera bien conectándome con isql tanto desde el servidor como desde el puesto de trabajo. En el caso del puesto de trabajo me decía que estaba conectado a: 192.168.0.152:C\bd\bd.sql. Ejecuté el programa en ambos equipos e iniciaron sin problemas. Sin embargo, se presentó el siguiente inconveniente: Si hago una modificación en uno de los dos equipos no se ve el cambio en el otro hasta que no cierre y vuelva a ejecutar los programas. Hice la siguiente prueba: Ingresé un registro en el programa que funciona en el servidor y y comprobé si aparecía en el cliente con isql y nada. Entiendo que sí se conecta a la base de datos correcta por que, por un lado, la ruta es correcta y por otro, me aparecen los datos que se insertaron en una ejecución anterior. Pero no se actualiza hasta que cierre los programas. Es como si al abrir el programa cliente trabajara con una copia de la base de datos y luego sincronizara la información al terminar. De hecho, al ingresar datos en una misma tabla en ambos equipos pasó lo siguiente: un generator asigno el 6 al correlativo del programa que corría en el servidor y el 7 al programa cliente. Pero el terminar la ejecución de los programas el registro 6 se eliminó. |
|
#7
|
|||
|
|||
|
Aclaro, por si alguien tiene dudas, que en el objeto TIBTransactión tengo la siguiente configuración:
Código:
Params.Strings = (
'read_committed'
'rec_version'
'nowait')
Código:
DataModule1->IBQuery1->Transaction->CommitRetaining(); |
|
#8
|
||||
|
||||
|
Los generadores en Firebird/Interbase no tienen en cuenta las transacciones. Esto quiere decir que dos sesiones diferentes con dos transacciones diferentes iran obteniendo números de un generador que serán correlativos. Si alguna transacción falla (rollback, exception, desconexión, etc.) el número generado se pierde.
Por lo que comentas, una de las dos transacciones (la que obtuvo el generador 6) ha fallado o se ha hecho un rollback o se ha desconetado y no ha podido grabar sus datos y por eso no ves ese registro. Lo que comentas de que una aplicación no ve los datos de la otra es por el tema de transaciones. Cada vez que abres la aplicación se abre una transacción. Esta ve todos los datos que se hayan confirmado (commit) anteriores a si misma. Si quieres ver en una aplicación los datos de otra, deberás cada tanto hacer un commit de la transacción y cerrar y volver a abrir los DataSets. El CommitRetaining, Graba los datos, pero no abre otra transacción, por lo que seguirás viendo datos viejos. No se como es la estructura de tu aplicación, pero si la quieres volver multipuesto, deberás ver como actualizar las transacciones. * Cada vez que abras el formulario. * Cada vez que grabes un datos, hacer commit y posicionarte otra vez en el registro que correponda al contador (Generador) obtenido. * Un botón que haga lo que menciono en la línea anterior. |
|
#9
|
|||
|
|||
|
Cita:
1.- No sera que tu Aplicación tiene busca los datos de conexion en algun sitio y te esta colocando los Parametros Viejos en TIBDatabase ? 2.- Has Probado antes de Hacer la Instrucción .. Ver en un a ver que te muestra ... Todo esto para que salgas de dudas ... |
![]() |
|
|
Temas Similares
|
||||
| Tema | Autor | Foro | Respuestas | Último mensaje |
| Problema de conexion a servidor remoto | marcelofabianip | MySQL | 4 | 08-04-2012 09:24:43 |
| ingresar a servidor remoto con nombre de usuario y contraseña | Gaim2205 | API de Windows | 0 | 21-05-2008 17:41:11 |
| Conectar a Mysql en servidor remoto | albertillo | Conexión con bases de datos | 10 | 05-02-2007 17:17:58 |
| Problema IP dinamica cn Servidor Control Remoto | Namaris | Redes | 8 | 29-01-2007 23:22:48 |
| Como conectar a servidor base de datos remoto???? | AFilth | Conexión con bases de datos | 7 | 04-01-2006 13:06:51 |
|