Précédent   Forum des professionnels en informatique > Bases de données > Firebird
Firebird Forum d'entraide sur le SGBD Firebird. Avant de poster -> F.A.Q Firebird, Tutoriels
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 17/09/2008, 13h19   #1
Invité régulier
 
Inscription : novembre 2005
Messages : 73
Détails du profil
Informations forums :
Inscription : novembre 2005
Messages : 73
Points : 5
Points : 5
Par défaut Firebird embedded : perte de données si Crash du PC.

Bonjour,

Question basic, mais je rame, et je ne trouve pas de réponses dans le forum.

J'ai une application Delphi qui accède à une base de donnée Firebird, donc application monoposte est locale.

Quand j'ajoute un enregistrement, je fais un commit immédiatement à la fin. A chaque insert. Je croyais que c'était ça "le truc".

Pourtant, quand l'appli plante et ne se ferme pas proprement, je perds tous les enregistrements saisis depuis le dernier lancement de l'appli. Un peu comme si je travaillais en mémoire et pas sur le disque.. D'ailleurs, je le vois à la date du fichier FBD qui n'a pas évolué. Seule une fermeture propre de l'application préserve les données, et alors je vois bien la date du fichier FBD mise à jour.

Mon souci est simple dans l'idée, mais galère à réaliser : je souhaite qu'à chaque ajout ou modification de données, les données soient en quelque sorte "postées" au fichier physique FBD. Et pas en mémoire. Ainsi, un crash ne sera plus problématique. J'ai un poste instable, je perds souvent mon travail.

Merci pour vos lumières.
What est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 17/09/2008, 13h28   #2
Modérateur
 
Avatar de Cl@udius
 
Homme Claude Renouleaud
Développeur informatique
Inscription : février 2006
Messages : 4 760
Détails du profil
Informations personnelles :
Nom : Homme Claude Renouleaud
Âge : 49
Localisation : France, Hautes Pyrénées (Midi Pyrénées)

Informations professionnelles :
Activité : Développeur informatique

Informations forums :
Inscription : février 2006
Messages : 4 760
Points : 6 794
Points : 6 794
Salut

Citation:
Envoyé par What Voir le message
Un peu comme si je travaillais en mémoire et pas sur le disque..
Qu'est que tu utilises comme composants BDD ?

@+
__________________
A la question technique que par MP/MV tu formuleras, la réponse aux oubliettes finira.
Cl@udius est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 17/09/2008, 13h34   #3
Expert Confirmé

 
Homme Philippe Makowski
Consultant spécialité Firebird
Inscription : mai 2002
Messages : 2 215
Détails du profil
Informations personnelles :
Nom : Homme Philippe Makowski
Âge : 49
Localisation : France

Informations professionnelles :
Activité : Consultant spécialité Firebird
Secteur : Conseil

Informations forums :
Inscription : mai 2002
Messages : 2 215
Points : 3 318
Points : 3 318
la base est bien en forced write à true ?
__________________
Philippe Makowski
IBPhoenix - Firebird
Membre de l'April
makowski est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 17/09/2008, 13h35   #4
Invité régulier
 
Inscription : novembre 2005
Messages : 73
Détails du profil
Informations forums :
Inscription : novembre 2005
Messages : 73
Points : 5
Points : 5
Citation:
Envoyé par Cl@udius Voir le message
Qu'est que tu utilises comme composants BDD ?

IBDatabase + IBTransaction + IBTable en V1

et

IBDatabase + IBTransaction + IBQuery en V2 (je change car il parait que IBTABLE c'est pas top)

J'ai le même souci sur les 2 versions de mon appli.

Merci pour l'aide.
What est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 17/09/2008, 13h38   #5
Invité régulier
 
Inscription : novembre 2005
Messages : 73
Détails du profil
Informations forums :
Inscription : novembre 2005
Messages : 73
Points : 5
Points : 5
Citation:
Envoyé par makowski Voir le message
la base est bien en forced write à true ?
Je ne vois pas cette option... C'est dans le composant IBDatabase ?
What est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 17/09/2008, 13h50   #6
Expert Confirmé

 
Homme Philippe Makowski
Consultant spécialité Firebird
Inscription : mai 2002
Messages : 2 215
Détails du profil
Informations personnelles :
Nom : Homme Philippe Makowski
Âge : 49
Localisation : France

Informations professionnelles :
Activité : Consultant spécialité Firebird
Secteur : Conseil

Informations forums :
Inscription : mai 2002
Messages : 2 215
Points : 3 318
Points : 3 318
gfix -w sync mabase

et là on est certain qu'elle sera en forced write

pour vérifier sous isql, en étant connecté à la base, taper SHOW DATABASE;
__________________
Philippe Makowski
IBPhoenix - Firebird
Membre de l'April
makowski est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 17/09/2008, 17h04   #7
Invité régulier
 
Inscription : novembre 2005
Messages : 73
Détails du profil
Informations forums :
Inscription : novembre 2005
Messages : 73
Points : 5
Points : 5
Citation:
Envoyé par makowski Voir le message
gfix -w sync mabase

et là on est certain qu'elle sera en forced write

pour vérifier sous isql, en étant connecté à la base, taper SHOW DATABASE;
J'ai pas isql, mais dans mon outil EMSSQL, je vois Forced Write coché.

Par contre j'ai pas compris quoi faire de gfix -w sync mabase, ni où (dans delphi en dév, au runtime ?)
What est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 17/09/2008, 17h08   #8
Modérateur
 
Avatar de Cl@udius
 
Homme Claude Renouleaud
Développeur informatique
Inscription : février 2006
Messages : 4 760
Détails du profil
Informations personnelles :
Nom : Homme Claude Renouleaud
Âge : 49
Localisation : France, Hautes Pyrénées (Midi Pyrénées)

Informations professionnelles :
Activité : Développeur informatique

Informations forums :
Inscription : février 2006
Messages : 4 760
Points : 6 794
Points : 6 794
Re,

gfix est un des outils fournit avec Firebird qui est présent dans le répertoire \Bin de l'installation.

Il suffit d'appeler gfix tel que décrit par P. Makowski pour t'assurer que les écritures seront bien forcées à chaque Commit.

@+ Claudius
__________________
A la question technique que par MP/MV tu formuleras, la réponse aux oubliettes finira.
Cl@udius est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 17/09/2008, 17h12   #9
Invité régulier
 
Inscription : novembre 2005
Messages : 73
Détails du profil
Informations forums :
Inscription : novembre 2005
Messages : 73
Points : 5
Points : 5
Citation:
Envoyé par Cl@udius Voir le message
Re,

gfix est un des outils fournit avec Firebird qui est présent dans le répertoire \Bin de l'installation.

Il suffit d'appeler gfix tel que décrit par P. Makowski pour t'assurer que les écritures seront bien forcées à chaque Commit.

@+ Claudius
OK merci. Par contre j'ai pas de répertoire Bin. J'ai Firebird Embedded.

Si c'est une manip à faire une fois pour toute, je peux peut-être installer firebird complet (non standalone) pour faire la manip ?
What est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 17/09/2008, 17h20   #10
Modérateur
 
Avatar de Cl@udius
 
Homme Claude Renouleaud
Développeur informatique
Inscription : février 2006
Messages : 4 760
Détails du profil
Informations personnelles :
Nom : Homme Claude Renouleaud
Âge : 49
Localisation : France, Hautes Pyrénées (Midi Pyrénées)

Informations professionnelles :
Activité : Développeur informatique

Informations forums :
Inscription : février 2006
Messages : 4 760
Points : 6 794
Points : 6 794
Citation:
Envoyé par What Voir le message
Si c'est une manip à faire une fois pour toute, je peux peut-être installer firebird complet (non standalone) pour faire la manip ?
Oui c'est à faire une fois pour toute.
Perso je n'utilise pas la version embedded sur mon poste de développement, mais uniquement sur le poste sur lequel est déployé l'application.

Pour revenir à tes compos, une fois que tu te seras assuré du statut de Force Write, jette également un coup d'œil sur la propriété CachedUpdates des tes compos TTable, TQuery, ... au cas où ?

@+
__________________
A la question technique que par MP/MV tu formuleras, la réponse aux oubliettes finira.
Cl@udius est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 17/09/2008, 18h05   #11
Invité régulier
 
Inscription : novembre 2005
Messages : 73
Détails du profil
Informations forums :
Inscription : novembre 2005
Messages : 73
Points : 5
Points : 5
Bon, c'est pas ma veine... J'installe donc firebird non standalone sur mon poste. Que cela soit avec Isql, Gfix en command line, ou mon outil EMS, chaque fois que j'essaye d'accéder au fichier FDB, ça me dit "your username and password are not defined"...

Et pourtant en Embedded, j'accède sans souci avec SYSDBA, masterkey... Il faut demander à l'admin de créer un user. Mais l'admin c'est moi, et je vois pas quoi changer ou créer ?
What est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 18/09/2008, 13h36   #12
Invité régulier
 
Inscription : novembre 2005
Messages : 73
Détails du profil
Informations forums :
Inscription : novembre 2005
Messages : 73
Points : 5
Points : 5
Citation:
Envoyé par What Voir le message
Bon, c'est pas ma veine... J'installe donc firebird non standalone sur mon poste. Que cela soit avec Isql, Gfix en command line, ou mon outil EMS, chaque fois que j'essaye d'accéder au fichier FDB, ça me dit "your username and password are not defined"...

Et pourtant en Embedded, j'accède sans souci avec SYSDBA, masterkey... Il faut demander à l'admin de créer un user. Mais l'admin c'est moi, et je vois pas quoi changer ou créer ?
Tjs rien à faire. Y a t'il un autre moyen d'appliquer la commande write Sync sur la base embedded, sous EMS par exemple ? Comme un ordre sql ?

Merci par avance.
What est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 18/09/2008, 14h28   #13
Expert Confirmé

 
Homme Philippe Makowski
Consultant spécialité Firebird
Inscription : mai 2002
Messages : 2 215
Détails du profil
Informations personnelles :
Nom : Homme Philippe Makowski
Âge : 49
Localisation : France

Informations professionnelles :
Activité : Consultant spécialité Firebird
Secteur : Conseil

Informations forums :
Inscription : mai 2002
Messages : 2 215
Points : 3 318
Points : 3 318
c'est un bête problème d'installation
http://firebirdsql.org/devel/doc/rls...nstall210.html

et la preuve par la version embebed ne veux rien dire, puisqu'embeded, ne fait pas de controle sur le USER / pass
__________________
Philippe Makowski
IBPhoenix - Firebird
Membre de l'April
makowski est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 18/09/2008, 16h31   #14
Invité régulier
 
Inscription : novembre 2005
Messages : 73
Détails du profil
Informations forums :
Inscription : novembre 2005
Messages : 73
Points : 5
Points : 5
Citation:
Envoyé par makowski Voir le message
c'est un bête problème d'installation
http://firebirdsql.org/devel/doc/rls...nstall210.html

et la preuve par la version embebed ne veux rien dire, puisqu'embeded, ne fait pas de controle sur le USER / pass
Merci pour l'aide.

Mais j'ai pas tout compris :

Ma base sous Embedded est bien soumise aux USER/Pass, car si je ne précise pas SYSDBA/masterkey, mon appli delphi ne se connecte pas.

Pour la version complète de FB, c'est un peu la galère. J'ai suivi ton lien, supprimé l'installation, vérifier qu'aucune variable d'environnement ne traînait, pas de reste dans la bdr window, etc.

Je relance l'installation. Tout semble bien se passer. Je lance Isql, essaie de me connecter , et même message :"your username and password are not defined..."

C'est un truc de fou...

(c'est FB1.5 ; j'ose pas installer FB complète en 2.0 car ma base est en embedded 1.5...)
What est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 18/09/2008, 17h01   #15
Expert Confirmé

 
Homme Philippe Makowski
Consultant spécialité Firebird
Inscription : mai 2002
Messages : 2 215
Détails du profil
Informations personnelles :
Nom : Homme Philippe Makowski
Âge : 49
Localisation : France

Informations professionnelles :
Activité : Consultant spécialité Firebird
Secteur : Conseil

Informations forums :
Inscription : mai 2002
Messages : 2 215
Points : 3 318
Points : 3 318
Citation:
Envoyé par What Voir le message
Ma base sous Embedded est bien soumise aux USER/Pass, car si je ne précise pas SYSDBA/masterkey, mon appli delphi ne se connecte pas.
Citation:
The security database (namely security.fdb) is not used
in the embedded server and hence is not required. Any
user is able to attach to any database. Since both
the server and the client run in the same address space,
the security becomes just an agreement between both
sides which can be easily compromised.

But note that SQL privileges are still checked.
Citation:
Envoyé par What Voir le message
j'ose pas installer FB complète en 2.0 car ma base est en embedded 1.5
Fb 2 sait parfaitement travailler avec une base 1.5
et c'est une bonne occasion de passer à Firebird 2.1
__________________
Philippe Makowski
IBPhoenix - Firebird
Membre de l'April
makowski est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 18/09/2008, 17h38   #16
Invité régulier
 
Inscription : novembre 2005
Messages : 73
Détails du profil
Informations forums :
Inscription : novembre 2005
Messages : 73
Points : 5
Points : 5
Citation:
Envoyé par makowski Voir le message
Fb 2 sait parfaitement travailler avec une base 1.5
et c'est une bonne occasion de passer à Firebird 2.1
Firebird embedded existe en v2 ? Pas trouvé...
What est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 18/09/2008, 17h54   #17
Expert Confirmé

 
Homme Philippe Makowski
Consultant spécialité Firebird
Inscription : mai 2002
Messages : 2 215
Détails du profil
Informations personnelles :
Nom : Homme Philippe Makowski
Âge : 49
Localisation : France

Informations professionnelles :
Activité : Consultant spécialité Firebird
Secteur : Conseil

Informations forums :
Inscription : mai 2002
Messages : 2 215
Points : 3 318
Points : 3 318
pas beaucoup cherché
http://firebirdsql.org/index.php?op=files&id=engine_211
__________________
Philippe Makowski
IBPhoenix - Firebird
Membre de l'April
makowski est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 18/09/2008, 18h00   #18
Invité régulier
 
Inscription : novembre 2005
Messages : 73
Détails du profil
Informations forums :
Inscription : novembre 2005
Messages : 73
Points : 5
Points : 5
Citation:
Envoyé par makowski Voir le message
Merci pour le lien, c'est sympa. J'étais encore en train de chercher, mais en vain.

Pas mon genre d'attendre que ça tombe tout cuit, j'ai trop de respect pour les forums, et pour vous qui m'aidez tant en ce moment. Je suis peut-être un peu lent !
What est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 06h01.


 
 
 
 
Partenaires

Hébergement Web