IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Connexion aux bases de données Firebird Discussion :

Restaurer ma Base sans Erreur???


Sujet :

Connexion aux bases de données Firebird

  1. #1
    Membre actif Avatar de touhami
    Inscrit en
    Avril 2002
    Messages
    327
    Détails du profil
    Informations forums :
    Inscription : Avril 2002
    Messages : 327
    Points : 264
    Points
    264
    Par défaut Restaurer ma Base sans Erreur???
    Bonjour a tous,
    la sauvegarde de ma base de données s'effectue sans aucun probeleme,
    mais au contraire de la restauration,
    et voici mon code :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
      DataModule1.IBMaBase.Connected := FALSE;
     
        with DataModule1.IBRestoreService1 do
        begin
          Params.Add('user_name=sysdba');
          Params.Add('password=masterkey');
         try
            Verbose := True;
            Options := [Replace, UseAllSpace];
            DatabaseName.Clear;
            BackupFile.Clear;
            DatabaseName.Add('D:\Monapplication\MaBase.gdb');
            BackupFile.Add('D:\MesSauvegardes\LaSauvegarde.gbk');
            Active := True;
            ServiceStart;
          finally
            Active := False;
            ShowMessage('Terminer');
          end;
        end;
      DataModule1.IBMaBase.Connected := TRUE;
    j’obtiens l'erreur suivante :
    le Projet MonProjet.exe a provoqué une classe d'exception EIBInterBaseError avec le message 'I/O error for file "D:\Monapplication\MaBase.gdb"
    Error while trying to open file
    le processus ne peut pas accéder au fichier car ce fichier est utilisé par un autre processus'.
    mes la restauration est bien effectuer , le problème que je ne peut pas savoir la source du problème.
    j'utilise Interbase 7.5 et Delphi 7 entreprise sous Windwos XP Pro.
    Bon developpement.

  2. #2
    Membre actif
    Profil pro
    Inscrit en
    Octobre 2003
    Messages
    610
    Détails du profil
    Informations personnelles :
    Localisation : France, Gironde (Aquitaine)

    Informations forums :
    Inscription : Octobre 2003
    Messages : 610
    Points : 213
    Points
    213
    Par défaut
    La base de données est-elle en cours d'utilisation par une autre application ?
    Ouverte dans IBExpert ou IBConsole par exemple.

    Pour la restauration la base ne doit pas avoir de users connectés.

    Enfin, je pense !

  3. #3
    Membre averti

    Profil pro
    Inscrit en
    Décembre 2004
    Messages
    379
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2004
    Messages : 379
    Points : 376
    Points
    376
    Par défaut
    il faut changer l'extension "gdb" en "fdb" par exemple.

    cette extension et utilisée par windows

  4. #4
    Membre actif Avatar de touhami
    Inscrit en
    Avril 2002
    Messages
    327
    Détails du profil
    Informations forums :
    Inscription : Avril 2002
    Messages : 327
    Points : 264
    Points
    264
    Par défaut
    Bonjour,
    je vous remercie pour votre réponse,
    Ma base de donnée n'est pas Ouverte dans IBExpert ou IBConsole.
    et je suis le seul utilisateur (SYSDBA) qui est connecter a la base.
    et je ne sais pas comment faire pour détecter quel processus qui utilise ma base.
    j'ai essayer d'exécuter pas à pas mon morceau de programme ,
    tous va bien sauf quand j'arrive a la dernière instruction :


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    DataModule1.IBMaBase.Connected := TRUE;
    j'obtient le message d'erreure.

    et pour la reponse du Monsieur jean-jacques varvenne
    il faut changer l'extension "gdb" en "fdb" par exemple.
    a titre d'information j'utilise Interbase 7.5 non pas FireBird.
    et est ce que l'extension GDB pose toujours des problème avec Windows XP même avec Interbase 7.5.
    Merci beaucoup pour l'intérêt que vous avez mis a ma question.
    Bon développement a tous.

  5. #5
    Membre expert

    Homme Profil pro
    Responsable de service informatique
    Inscrit en
    Janvier 2004
    Messages
    2 123
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Charente Maritime (Poitou Charente)

    Informations professionnelles :
    Activité : Responsable de service informatique

    Informations forums :
    Inscription : Janvier 2004
    Messages : 2 123
    Points : 3 256
    Points
    3 256
    Par défaut
    Salut,

    jean-jacques varvenne a raison, l'extentions gdb est déjà utilisé par windows, et cela n'a rien a voir avec la version d'IB. Il faut donc en choisir une autre ou désactiver la restauration système.

    plus d'info ici : http://thierry-laborde.developpez.co...interbase6/#L4
    CV :
    - LinkedIn
    - Viadeo

  6. #6
    Membre actif Avatar de touhami
    Inscrit en
    Avril 2002
    Messages
    327
    Détails du profil
    Informations forums :
    Inscription : Avril 2002
    Messages : 327
    Points : 264
    Points
    264
    Par défaut
    Bonjour,
    Merci yobenzen pour votre reponse est je vais essayer tous de suite.

  7. #7
    Membre actif Avatar de touhami
    Inscrit en
    Avril 2002
    Messages
    327
    Détails du profil
    Informations forums :
    Inscription : Avril 2002
    Messages : 327
    Points : 264
    Points
    264
    Par défaut
    Bonjour,
    j'ai essayé a nouveau avec Un Base de données avec l'extension "Fdb"au lieu de "Gdb" mais le probleme est toujour présent.
    le Projet MonProjet.exe a provoqué une classe d'exception EIBInterBaseError avec le message 'I/O error for file "D:\Monapplication\MaBase.gdb"
    Error while trying to open file
    le processus ne peut pas accéder au fichier car ce fichier est utilisé par un autre processus'.
    j'utilise Interbase 7.5 et Delphi 7 entreprise sous Windwos XP Pro.
    Bon developpement.

  8. #8
    Membre actif Avatar de touhami
    Inscrit en
    Avril 2002
    Messages
    327
    Détails du profil
    Informations forums :
    Inscription : Avril 2002
    Messages : 327
    Points : 264
    Points
    264
    Par défaut
    Bonjour,
    merci pour tous le monde ,
    j'ai reinstallé mon Interbase et je installé a nouveau est le probleme est bein resolue.
    Merci a Andry pour ses Conseils utililes.
    Bon developpement a tous.

  9. #9
    Membre expert
    Avatar de Barbibulle
    Profil pro
    Inscrit en
    Octobre 2002
    Messages
    2 048
    Détails du profil
    Informations personnelles :
    Âge : 53
    Localisation : France

    Informations forums :
    Inscription : Octobre 2002
    Messages : 2 048
    Points : 3 342
    Points
    3 342
    Par défaut Re: Restaurer ma Base sans Erreur???
    Bonjour,
    Votre probleme est tout a fait normal et n'a rien a voir avec une mauvaise installation.

    Une fois la procédure de restauration lancée (ServiceStart) celle ci rend la main immédiatement.

    Ce qui vous arrive c'est que tout simplement la restauration est en cours et donc vous ne pouvez y acceder tant que celle ci n'est pas terminée. (Ce qui explique pourquoi au bout d'un certain temps vous arrivez a vous connecter)

    Pour résoudre ce problème il suffit de mettre une boucle d'attente de fin du service de restauration :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    IBRestoreService1.ServiceStart;
    While not IBRestoreService1.EOF do Sleep(10);
    ...
    Dernière remarque si vous utilisez le paramètre de restauration 'UseAllSpace' votre base va en effet est plus compacte et donc plus petite. Cependant elle sera bien moins performante notamment lorsque vous ferez des créations de données (INSERT).

  10. #10
    Membre actif Avatar de touhami
    Inscrit en
    Avril 2002
    Messages
    327
    Détails du profil
    Informations forums :
    Inscription : Avril 2002
    Messages : 327
    Points : 264
    Points
    264
    Par défaut
    Bonjour,
    c'est avec un tres grand plaisire que je lit ton message Barbibulle,
    Merci pour votre reponse et Bon developpement a tous.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Erreur 3241 en restauration de base SQL Server
    Par au57ME dans le forum Administration
    Réponses: 3
    Dernier message: 15/07/2010, 10h50
  2. Insert dans base Access qui ne se fait pas, mais sans erreur
    Par muppetshow dans le forum Général JavaScript
    Réponses: 8
    Dernier message: 28/01/2010, 21h37
  3. [SQL 2005] "Restauration.." de base sans fin
    Par Poulou dans le forum MS SQL Server
    Réponses: 2
    Dernier message: 16/11/2006, 09h26
  4. Erreur dans le restauration une Base Interbase
    Par touhami dans le forum Bases de données
    Réponses: 2
    Dernier message: 18/11/2005, 09h34
  5. Erreur dans le restauration une Base Interbase
    Par touhami dans le forum InterBase
    Réponses: 5
    Dernier message: 18/11/2005, 09h28

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo