Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Bases de datos > Firebird e Interbase
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 03-01-2011
pani_alex pani_alex is offline
Miembro
 
Registrado: oct 2005
Posts: 51
Poder: 19
pani_alex Va por buen camino
probema con firebird, no baja los datos al disco

hola necesito una ayuda urgente, mi servidor tiene algun problema omocional y no esta bajando los datos al disco duro, entrando en el sistema estan todos los registros pero copiando el archivo gdb o haciendo un gbak no estan, se quedaron hasta hace una semana... la pregunta del millon, como hago para no perder estos datos? porque si lo apago se me van, ya me paso

gracias mil
Responder Con Cita
  #2  
Antiguo 03-01-2011
pani_alex pani_alex is offline
Miembro
 
Registrado: oct 2005
Posts: 51
Poder: 19
pani_alex Va por buen camino
perdon, olvide mencionar, estoy usando la version 1.5 aun.

sueño con que haya algun comando de "commid" o algo parecido para darle la orden al motor XD
Responder Con Cita
  #3  
Antiguo 04-01-2011
Avatar de guillotmarc
guillotmarc guillotmarc is offline
Miembro
 
Registrado: may 2003
Ubicación: Huelva
Posts: 2.638
Poder: 24
guillotmarc Va por buen camino
Hola.

Esto es rarísimo, nunca había escuchado (y mucho menos visto) nada parecido.

Lo primero que tienes que hacer es actualizar a la última versión de Firebird 1.5 (o sea, Firebird 1.5.6, lo cual no representa ningún cambio para tu base de datos o tu aplicación, pero incorpora todas las correcciones de bugs hasta el presente).

Firebird viene por defecto con ForcedWrites (cualquier cambio se graba de inmediato al disco duro). Asegúrate de que nadie te lo haya cambiado por vete a saber que razón (aunque no creo que eso pueda retrasar las grabaciones durante una semana).

http://www.firebirdsql.org/manual/qsg15-safety.html

La verdad es que tiene todo el aspecto de que vuestra aplicación no está confirmando las transacciones desde las que se introducen los datos. Por eso, desde esa transacción se verían perfectamente los datos introducidos, pero desde cualquier otra transacción es como si aún no se hubiesen entrado.

Si cuando cierras todas las aplicaciones que introducen datos, entonces ya parece como si los datos se hayan grabado en disco, eso querría decir que tenéis que corregir la aplicación puesto que no está confirmando las transacciones a medida que se introducen datos.

Saludos.
__________________
Marc Guillot (Hi ha 10 tipus de persones, els que saben binari i els que no).
Responder Con Cita
  #4  
Antiguo 04-01-2011
Avatar de Casimiro Notevi
Casimiro Notevi Casimiro Notevi is offline
Moderador
 
Registrado: sep 2004
Ubicación: En algún lugar.
Posts: 32.057
Poder: 10
Casimiro Notevi Tiene un aura espectacularCasimiro Notevi Tiene un aura espectacular
Lo explicado por guillotmarc es lo que debes comprobar, desde tu programa debes confirmar todas las transacciones antes de cerrarlo. En cuanto a lo de que pase una semana sin confirmar transacciones, yo sí lo he visto, era un servidor windows con la opción ForcedWrites deshabilitada. Aunque no fue con firebird, fue con interbase 6.0, pero para el caso viene a ser lo mismo.
Así que todo lo recomendado por guillotmarc es lo que debes verificar.
Responder Con Cita
  #5  
Antiguo 04-01-2011
pani_alex pani_alex is offline
Miembro
 
Registrado: oct 2005
Posts: 51
Poder: 19
pani_alex Va por buen camino
mmm, no se si me exprese bien... el tema es asi, uno entra por sistema y todo estaba, los dias anteriores, el dia actual, todo, pero en el archivo gdb quedo hasta el dia x, si lo copiaba y usaba, no existian los dias 28 29 y 30 por ej, haciendo gbak tampoco conseguia bajarlos, era como si todo estaba flotando en la memoria. No es la primera ves q pasa pero ya no importa, los datos ya se fueron, no se si es de tanto q trate el gbak pero ya no estan.

gracias de todas formas
Responder Con Cita
  #6  
Antiguo 04-01-2011
Avatar de guillotmarc
guillotmarc guillotmarc is offline
Miembro
 
Registrado: may 2003
Ubicación: Huelva
Posts: 2.638
Poder: 24
guillotmarc Va por buen camino
Cita:
Empezado por pani_alex Ver Mensaje
mmm, no se si me exprese bien... el tema es asi, uno entra por sistema y todo estaba, los dias anteriores, el dia actual, todo, pero en el archivo gdb quedo hasta el dia x, si lo copiaba y usaba, no existian los dias 28 29 y 30 por ej, haciendo gbak tampoco conseguia bajarlos, era como si todo estaba flotando en la memoria. No es la primera ves q pasa pero ya no importa, los datos ya se fueron, no se si es de tanto q trate el gbak pero ya no estan.
Eso es exactamente lo que puede pasar al tener los ForcedWrites desactivados o bien al no confirmar las transacciones.

Los ForceWrites desactivados quiere decir que tienes los datos solo en memoria, y que no se van a pasar al archivo físico hasta que al motor no le parezca conveniente.

Y cuando lo miras por el sistema, depende de como esté programado lo vas a ver desde la misma transacción con la que se entraron los datos, y por lo tanto aparecen normalmente, pero esos datos van a estar en el limbo, y solo pasarán a estar disponibles para todos en el momento en que finalmente se confirme dicha transacción. En este caso es una mala programación y hay que corregir la aplicación (además, si por cualquier razón como que se apague bruscamente la aplicación, esa transacción no se confirma nunca entonces vas a perder todos esos datos no confirmados, tal y como dices que te ha pasado).

NOTA: Recuerda que para hacer una copia directa del archivo (sin pasar por un Backup-Restore), no deberías tener ninguna conexión a ese archivo (cerrar todos los programas que acceden a esa base de datos), y si puedes detener el servicio de Firebird, mejor que mejor. En caso contrario, en cualquier momento te vas a encontrar con una copia corrupta de los datos (lo cual también podría explicar tu problema).

Saludos.
__________________
Marc Guillot (Hi ha 10 tipus de persones, els que saben binari i els que no).

Última edición por guillotmarc fecha: 04-01-2011 a las 14:49:53.
Responder Con Cita
  #7  
Antiguo 04-01-2011
Avatar de Casimiro Notevi
Casimiro Notevi Casimiro Notevi is offline
Moderador
 
Registrado: sep 2004
Ubicación: En algún lugar.
Posts: 32.057
Poder: 10
Casimiro Notevi Tiene un aura espectacularCasimiro Notevi Tiene un aura espectacular
Aunque voy a parecer una cotorra repitiendo lo que dice guillotmarc, no me importa , lo repito:
Repito todo exactamente como ha indicado guillotmarc. Ese es el problema, pani_alex.
Responder Con Cita
  #8  
Antiguo 05-01-2011
pani_alex pani_alex is offline
Miembro
 
Registrado: oct 2005
Posts: 51
Poder: 19
pani_alex Va por buen camino
bueno, entonces q pasa si activo el forcewrites? eso hace q los datos se escriban al momento de darles guardar sin necesidad de modificar el sistema? o solo se ejecuta en el momento?

me respondo solo y pongo el link para los q tengan la misma duda http://www.sinatica.com/blog/en/inde...es-when-to-use

Última edición por pani_alex fecha: 05-01-2011 a las 19:06:02.
Responder Con Cita
Respuesta



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
Problemas con formato de disco y Firebird marcoszorrilla Firebird e Interbase 13 21-10-2010 06:59:33
probema al operar con LARGE_INTEGER bactering C++ Builder 2 16-04-2009 00:30:51
Correr aplicación con firebird en K\: y S.O. en otro disco coyotaxo Conexión con bases de datos 0 12-10-2005 22:01:23
Enviar datos a disco Ignacio Varios 5 07-04-2004 02:49:24
datos del disco duro seduerey Varios 2 01-07-2003 22:13:09


La franja horaria es GMT +2. Ahora son las 09:07:00.


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
Copyright 1996-2007 Club Delphi