FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
|
Herramientas | Buscar en Tema | Desplegado |
|
#1
|
||||
|
||||
Me acabo de fijar en que una era la 2.5.2 y la otra 2.5.3
Deberías de probar a hacerlo "normalmente". Supongo que el backup que tienes es de la 2.5.2, y supongo que no existe el backup con el parámetro "transportable", así que: Con firebird 2.5.2 restauras el backup. Debería estar bien. Luego haces un backup transportable, con el parámetro -t gbak -b -t -v -user zzzzzzz -password yyyyyy basedatos.fdb basedatos.fbk Luego desisntalas esa versión e instalas la 2.5.3 Ahora la restauras normalmente: gbak -r -p 8192 -v -user zzzzzzz -password yyyyyy basedatos.fbk basedatos.fdb EDITO: Ahora veo el mensaje de [duilioisola]. Realmente es eso, una mezcla de versiones y haber hecho un backup no transportable. |
#2
|
||||
|
||||
En las ultimas versiones de Delphi si uno no pone atención se instala Interbase XE, y usa aun el mismo nombre de dll (GDS32.DLL), cuando se instala firebird posteriormente este no puede reescribir esa dll y puede causar problemas (...y me los causó).
Saludos. |
#3
|
||||
|
||||
Creo recordar es como dice Young.
En principio el orden para localizar la dll gds32 o fbclient.dll es: - carpeta del ejecutable - carpeta system32 ó SYSWOO64 - variables de entorno En system32 siempre deberá estar la dll de la versión más moderna, ya que tiene compatibilidad hacia atrás hasta Interbase 6. Si un Firebird más nuevo quiere conectarse con una gds32.dll antigua, lo más normal es que dé problemas. Hoy en día lo que se está haciendo es distribuir una versión de Firebird personalizada para tu aplicación, de esa forma, pueden coexistir en el servidor físico, 3 servidores firebirds por puertos distintos. El escenario es simple, un servidor de una empresa donde usan 3 programas de distintos creadores, cada uno con su servicio de Guardian y Server. Todos viven y dejan vivir. Las tareas son simples: - copiar todas las subcarpetas de archivos de programa\Firebird\Firebird_2_5 en una subcarpeta de tu instalación. - En la carpeta bin de firebird tienes unos ficheros bat para registrar tu servicio, tan simple como: c:\mi programa\fb252\bin\instreg MiPrograma Eso creará el servicio de Firebird llamado "Firebird Guardian MiPrograma", "Firebird Server MiPrograma" y los arrancará. - El Firebird.conf debe estar preparado con tus opciones: - El puerto 3050 y 3051 cambiarlos a los que tú quieras por ejemplo 3066 y 3067 - RemoteServiceName: en lugar del gds_db, pones "MiPrograma" (ya de memoria no recuerdo las demás cosas, pero está documentado: http://www.destructor.de/firebird/multiinstance.htm eah!, para los vagos ) Para conectar a tu base de datos desde delphi: 192.168.1.12/3066:c:\bdMiPrograma\dd.fdb Saludos!!
__________________
Si usted entendió mi comentario, contácteme y gustosamente, se lo volveré a explicar hasta que no lo entienda, Gracias. |
#4
|
||||
|
||||
Cita:
Cita:
|
#5
|
||||
|
||||
Cita:
Cita:
¿Te refieres a que SQL Manager Lite no lo puede abrir o es tu aplicación? Yo creo que si el restore tuvo éxito, el problema está en algún lío de versiones por parte del cliente o por parte del servidor. Prueba hacer una máquina virtual limpia, le instalas Firebird y el SQL Manager, haces el restore y pruebas la conexión. |
#6
|
||||
|
||||
Cita:
Cita:
|
#7
|
||||
|
||||
Efectivamente las versiones de Firebird donde está corriendo la aplicación y la mía son distintas; allí está la 2.5.1 y aquí la 2.5.2. He hecho esto que sugería Casimiro, pero la base de datos restaurada da el mismo error y me estoy volviendo loco.
|
#8
|
||||
|
||||
No te vuelvas loco. Detente, relájate un rato y después vuelve paso a paso, con las cosas claras.
Versión con la que se hizo el backup y restaurarlo con la misma versión. Ya hecho y funciona. Crear un nuevo backup transportable para llevarlo a otra versión. En la otra versión, restaurar el backup. No hay más. Tan solo debes estar seguro de que las versiones están correctamente instaladas y no están mezcladas. (gds32.dll fbclient.dll gbak etc...) Simplemente eso. |
#9
|
||||
|
||||
Gracias por vuestros mensajes. Debo ser algo más que bruto...
Cita:
Cita:
Cita:
Cita:
Código:
try { tColegio->Active = false; Colegio->Connected = false; Colegio->DatabaseName = AnsiString(cTablas) + "\\colegio.gdb"; Colegio->Params->Clear(); Colegio->Params->Add("USER 'sysdba'"); Colegio->Params->Add("PASSWORD 'masterkey'"); Colegio->Params->Add("PAGE_SIZE 4096"); Colegio->SQLDialect = 3; Colegio->CreateDatabase(); } catch(...) { return false; } Voy a probar otra cosa. Esta mañana, buscando con Google encontré un enlace Firebird Recuperación de bases de datos que utiliza la herramienta IBPump. Y en caso extremo, a las malas, como en el equipo donde corre la aplicación si funciona intentaré descargarme las tablas en ficheros de texto con la herramienta de extracción de bases de datos a un fichero de texto y la cargaría a la bestia. Ya sé que es una burrada, pero visto lo visto... |
#10
|
||||
|
||||
¿Seguro que no tienes una mezcla rara de versiones?
Es que si has hecho un restore correctamente, entonces tendrías que abrirla igualmente.
__________________
La otra guía de estilo | Búsquedas avanzadas | Etiquetas para código Únete al grupo Teaming clubdelphi | Colabora mediante Paypal Última edición por Casimiro Notevi fecha: 10-10-2014 a las 21:33:56. |
#11
|
||||
|
||||
Cada vez lo entiendo menos. Efectivamente tenía Firebird 2.5.2 e Interbase XE3, que ni me acordaba. Desinstalé TODO, borré las carpetas y volví a instalar Firebird desde cero... ¡Y al lanzar la aplicación me dice que el servidor está parado! Esto es para volverse loco; ya no sé por dónde cogerlo.
|
#12
|
||||
|
||||
Bueno, se ve que no se ha desinstalado todo. Te sugiero que en el panel de control, detengas el servicio de firebird y el de interbase, si está todavía.
Luego desinstales firebird e interbase, si está. Luego haz una búsqueda y borra a mano los directorios firebird e interbase. Luego borra también por los directorios de windows todos los gds32.dll y fbclient.dll que encuentres. Luego reinicias. Luego instalas firebird. Listo. |
#13
|
||||
|
||||
Que tal angel....
Fijate que yo tuve ese problema hace algún tiempo....de estar trabajando Interbase me fui a Firebird....y tuve problemas de versiones, encontré la solución y le sirvio a otro compañero del foro.....talvez sea también tu caso. Checa el hilo: (Sobre todo el msg #3) http://www.clubdelphi.com/foros/showthread.php?t=84972
__________________
Miguel Román Afectuoso saludo desde tierras mexicanas....un aguachile?, con unas "cetaseas" bien "muertas"?, VENTE PUES !! Última edición por mRoman fecha: 11-10-2014 a las 19:04:11. |
#14
|
||||
|
||||
Gracias por las respuestas; me han sido muy útiles. De verdad que cada vez entiendo menos estas máquinas. Después de toda la batalla que he relatado en este hilo me lié la manta a la cabeza; instalé (y deinstalé) Interbase 5.6 y volví a instalar Firebird 2.5.2 y ahora va y funciona bien ¿Me lo explica alguien?
Sólo una curiosidad: A pesar de haber desinstaldo Interbase y borrado la carpeta de instalación, ¡sigue apareciendo en el panel de control! Y no lo entiendo. |
#15
|
||||
|
||||
Lo que no entiendo es, si usas firebird, ¿para qué instalas interbase?
Es que de ahí viene tu problema, tienes versiones distintas. |
|
|
Temas Similares | ||||
Tema | Autor | Foro | Respuestas | Último mensaje |
Error al conectar a una IP fija con firebird | tulio | Internet | 3 | 24-04-2010 04:50:53 |
Ayuda con error al conectar a Firebird | Mauro® | Conexión con bases de datos | 9 | 20-02-2008 20:09:42 |
Error al intentar conectar Firebird | jfrank | Firebird e Interbase | 3 | 08-06-2007 19:48:05 |
Error al conectar Firebird+MDO | brakaman | Conexión con bases de datos | 2 | 08-04-2007 22:49:10 |
Error al conectar con un BD de Firebird 1.5 con un BDPConnection | tarus | .NET | 2 | 06-06-2005 09:09:38 |
|