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

FAQ FirebirdConsultez toutes les FAQ

Nombre d'auteurs : 6, nombre de questions : 205, dernière mise à jour : 15 septembre 2014  Ajouter une question

 

Cette faq a été réalisée à partir des questions fréquement posées sur les forums Firebird de http://www.developpez.com et de l'expérience personnelle des auteurs.

Nous tenons à souligner que cette F.A.Q. ne garantit en aucun cas que les informations qu'elle propose soient correctes. Les auteurs font le maximum, mais l'erreur est humaine. Cette F.A.Q. ne prétend pas non plus être complète. Si vous trouvez une erreur, ou que vous souhaitez devenir rédacteur, lisez ceci

Sur ce, nous vous souhaitons une bonne lecture.
L'équipe Firebird de Developpez.com

SommaireInstallation (18)
précédent sommaire suivant
 

Réponse courte: La plupart

Il peut y avoir des problèmes avec les UDF tentant d'accéder à la base de données de sécurité directement, car ce n'est plus permit avec Firebird 2.

Firebird 2 fournit un moyen de signaler NULL, et les moyens utilisés pour stocker les UDFs dans les tables systèmes ont été modifiés. Assurez-vous de passer vos bases de données en version supérieure en utilisant les scripts du sous-répertoire 'upgrade' de votre installation Firebird 2.

De même, si vous utilisez Linux, vous aurez peut-être besoin de re-compiler quelques bibliothèques d'UDFs à partir du source (c'est un problème connu de la bibliothèque rFunc par exemple).

Traduction réalisée depuis http://www.firebirdfaq.org/faq206/

Mis à jour le 10 mars 2009 SergioMaster

Quand seuls Firebird 1.0 et 1.5 étaient disponibles , les créateurs des paquetages Ubuntu et Debian décidèrent de construire le paquetage Firebird 1.5, en le nommant 'firebird2' pour éviter la confusion. Firebird 1.5 était prévu pour être une migration vers Firebird 2 de toute façon.
Cependant, à l'arrivée de Firebird 2.0, cela est devenu une source perpétuelle de cette confusion qu'ils voulaient éviter.

Depuis quelques temps quelques paquetages Debian de Firebird 2.0.x sont disponibles pour les suites "instable" et "en test" via le miroir réseau Debian.
Des paquetages pour Etch sont disponibles via backports.org.

http://packages.debian.org/source/firebird2.0
Pour le mode Classic récupérez "firebird2.0-classic", pour le Super serveur - "firebird2.0-super".
Tous les autres paquetages seront récupérés via les dépendances.

Pour l'utilisation du portage arrière stable de Etch lisez ceci
http://backports.org/dokuwiki/doku.php?id=instructions

De même , des paquetages Firebird2.0 seront disponibles pour Ubuntu Gutsy:
http://packages.ubuntu.com/cgi-bin/s...sy&release=all

Voici un HOWTO pour Ubuntu Hardy:
https://help.ubuntu.com/community/Firebird2.1
Traduction réalisée depuis http://www.firebirdfaq.org/faq159/

Mis à jour le 10 mars 2009 SergioMaster

Ceci arrive sous WindowsXP, qui désactive l'interface réseau (127.0.0.1 localhost) quand le cable n'est pas branché.
Ce comportement ne peut être modifié qu'en utilisant l'éditeur de registre (regedit), allez à la ligne:

Code text : Sélectionner tout
HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\Tcpip\Parameters<br/>
et ajoutez une nouvelle clé DWORD nommée DisableDHCPMediaSense avec la valeur 1.

Pour revenir à l'ancien comportement, modifiez cette valeur en la mettant à 0 ou effacez la clé.
Traduction réalisée depuis http://www.firebirdfaq.org/faq157/

Mis à jour le 10 mars 2009 SergioMaster

Bien que seul Windows soit officiellement supporté, vous pouvez utiliser le mode embarqué sous Linux, en utilisant le mode Classic.
Vous trouverez un HOWTO :
http://sotu.berlios.de/Firebird-Embe...nux-HOWTO.html

Il est écrit pour Firebird 1.5, mais fonctionne pour la version 2.0 avec quelques changements mineurs (ajout des fichiers icu .so).

Traduction réalisée depuis http://www.firebirdfaq.org/faq51/

Mis à jour le 10 mars 2009 SergioMaster

Parce que CPUAffinity ne s'applique qu'au Super Serveur. Classic peut travailler avec plusieurs CPUs sans problème, alors que Super Serveur a besoin de cette option pour empêcher le basculement entre processeurs, ce qui dégrade fortement les performances.
Traduction réalisée depuis http://www.firebirdfaq.org/faq222/

Mis à jour le 10 mars 2009 SergioMaster

La raison en est que les exécutables Firebird que vous avez installés ont été compilés avec, l'objectif étant une compatibilité avec de plus vieux systèmes.
Votre système ayant probablement une version libstdc++-6.0 ou plus d'installée.
Régler ce problème est facile, il suffi de trouver le paquetage avec libstdc++-5.0 et l'installer.
Si vous utilisez une distribution RPM (RedHat, Fedora, CentOS, Mandriva, SuSE) allez sur rpmbone.net (ou rpmfind.net) et recherchez les paquetages .rpm (nommés compat-libstdc++-33-3.2.3-61.i386.rpm ou quelque chose d'approchant).
Sous Fedora vous pouvez également utiliser l'installateur Yum qui téléchargera et installera pour vous , tout ce que vous avez à faire est de taper :

Code batch : Sélectionner tout
yum -y install compat-libstdc++-33
Si vous utilisez Slackware, installez un quelconque paquetage gcc-g++-3.3.xxxxxxxx.tgz et installez le dans le g++ back courant (pour le mettre par défaut à nouveau).
Si vous utilisez une distribution .Deb tel que Debian, Ubuntu, Mepis, etc... utilisez la recherche apt pour retrouver le paquetage nécessaire ou installez Firebird en utilisant apt-get plutôt que les paquettages du site web de Firebird.

Traduction réalisée depuis http://www.firebirdfaq.org/faq47/

Mis à jour le 10 mars 2009 SergioMaster

Seulement utilisable si vous exécutez Firebird comme application et non comme service (par exemple, c'est le seul mode autorisé pour Windows 98).
C'est une petite application qui vérifie si le serveur Firebird est actif et le redémarre en cas de crash.

Si vous configurez Firebird en tant que service sur les nouvelles versions de Windows (XP, 2000, etc.) vous pouvez faire en sorte que Firebird soit redémarré par Windows, dans ce cas il n'y aura pas besoin du Guardian (voir les notes à propos de l'installation silencieuse plus bas).

Sous Linux, le Super Serveur utilise le guardian également et pour les mêmes propos, le processus est appelé ibguard ou fbguarddépendant de la version de Firebird et il (re)démarre les processus ibserver/fbserver.
Prenez note que le guardian sera utilisé seulement en mode Super Serveur. Quand vous utilisez le mode Classic chaque connexion est un processus séparé, il n'aurait donc aucun bénéfice a un redémarrage, la connexion ayant disparue à la mort du processus - et de plus une nouvelle sera engendrée par xinetd ou inetd de toute façon.

Sous Windows, laisser le guardian s'exécuter peut même être contre-productif car exécutant fbserver.exe au lieu de fb_inet_server.exe, ce qui peut créer des problèmes. Assurez vous de ne pas exécuter guardian avec le mode Classic.

Si vous faites une installation silencieuse sous Windows, vous pouvez désactiver le Guardian et indiquer à Firebird de s'exécuter comme service par défaut en utilisant l'outil instsvc.exe .
Pour plus de détails lisez le fichier README.instsvc dans le répertoire 'doc' de votre installation Firebird.
Traduction réalisée depuis http://www.firebirdfaq.org/faq31/

Mis à jour le 10 mars 2009 SergioMaster

Installez Firebird puis lisez les fichiers installation_readme.txt et installation_scripted.txt situés dans le sous-répertoire 'doc' de votre installation.

Traduction réalisée depuis http://www.firebirdfaq.org/faq127/

Mis à jour le 10 mars 2009 SergioMaster

Si vous désirez utiliser Firebird via Terminal Server, voici quelques conseils utiles :

  • Ne mettez pas Firebird sur la même machine que celle jouant le rôle de Terminal Server, en particulier si vous avez besoin de manipuler plusieurs sessions. Le Terminal Server lui même utilise beaucoup de CPU et de mémoire. Utiliser une seule machine est non évolutif et vous aurez également un seul point de panne.
  • Si tous vos clients accèdent à la même base de données, vous devez utiliser un seul serveur Firebird pour les servir tous. Il vaut mieux dédier une machine rien qu'à cela . Vous pouvez avoir de nombreuses boites Citrix accédant à un seul serveur Firebird.
  • évitez l'accès "local", qui ne fonctionnera pas, et utilisez TCP/IP même si le serveur Firebird est sur la même machine (par exemple localhost:c:\chemin\vers\base.fdb).
  • Bien que cela fonctionne en mode Super Serveur, le mode Classic est plus évolutif. Il peut supporter plus d'utilisateurs simultanés et fait une meilleure utilisation de la RAM. Le mode Super serveur est un processus unique allouant de la mémoire pour tous ses clients. Quand le nombre de clients grossi il peut atteindre les limites imposées à un seul processus. D'un autre coté, le mode Classic exécute un processus séparé pour chaque connexion, la limite d'allocation d'un processus devient donc hors propos car il y a peu de chance que vous l'atteignez. Dans tous les cas, mettez dans la machine beaucoup de RAM car chaque processus en mode Classic a ses propres caches de base de données. Un autre argument pro Classic est qu'il peut utiliser toutes les CPUs de la machine.

Traduction réalisée depuis http://www.firebirdfaq.org/faq196/

Mis à jour le 10 mars 2009 SergioMaster

Oui. Assurez-vous seulement de décocher l'option d'installation de l'applet du panneau de contrôle lors de l'installation.

Si vous voulez utiliser la version 'Embarquée', n'utilisez pas la version 2.0.1 boguée . A la place utilisez les versions 1.5.4, 2.0.0, ou l'une des 2.x versions supérieures à la 2.0.1.

Assurez-vous de renseigner la valeur de IpcName du fichier firebird.conf si vous voulez que les connexions locales fonctionnent. Lisez les commentaires à ce sujet dans le fichier firebird.conf.

Sous Vista, vous pourrez également vous connecter en utilisant une variante de la chaine de connexion utilisant le nom de l'hôte, mais sans aucun nom, quelque chose comme :

Code batch : Sélectionner tout
:C:\Chemin\vers\base.fdb
Traduction réalisée depuis http://www.firebirdfaq.org/faq17/

Mis à jour le 10 mars 2009 SergioMaster

Oui.

Il n'y a pas grand chose à en dire. Essayez, si vous rencontrez des problèmes faites le savoir au projet Firebird.
Traduction réalisée depuis http://www.firebirdfaq.org/faq180/

Mis à jour le 10 mars 2009 SergioMaster

Dans le noyau Linux 2.6, une nouvelle bibliothèque de threading est apparue. Connue sous le nom de Native POSIX Thread Library ou NPTL. Cette bibliothèque permet aux programmes utilisant les Threads POSIX natifs de fonctionner très efficacement. Par exemple, il faut au programme NTPL environ deux secondes pour démarrer 100.000 threads, tandis que sur des noyaux non-NPTL il faudra environ 15 minutes pour cela.

Les constructions NTPL existent uniquement pour le Super Serveur car il utilise des threads pour chaque connexion (Classic utilise un processus séparé pour chaque connexion). Vous pourrez télécharger et installer le paquetage Firebird approprié : NPTL paquetage pour système NPTL ou non NPTL ou bien non-NPTL.

Si vous n'êtes pas sûr que votre système permette le NPTL, vous pouvez le vérifier avec la commande :

Code text : Sélectionner tout
getconf GNU_LIBPTHREAD_VERSION
Si le NPTL est supporté, vous obtiendrez quelque chose comme "NPTL 2.3.5".

Code text : Sélectionner tout
getconf: Unrecognized variable `GNU_LIBPTHREAD_VERSION'
sinon vous obtiendrez quelque chose ressemblant à :
ou tout autre sortie ne contenant pas la version NPTL.

Assurez-vous de ne pas installer une mauvaise version car cela peut causer des dysfonctionnements de Firebird : connexions lentes, échecs de connexions sporadiques, etc...
Traduction réalisée depuis http://www.firebirdfaq.org/faq145/

Mis à jour le 1er mai 2009 SergioMaster

Systèmes d'exploitation

  • Windows 98,Me,2000,2003,XP,NT,Vista ou plus récent
  • Linux 2.4 or 2.6 avec GCC 3.2 ou plus
  • Mac OS X
  • Solaris 2.6, 2.7
  • FreeBSD 4.x
  • HP-UX 10.0

Spécifications matérielles minimales
  • 15MB Espace disque dur
  • 486 CPU ou plus
  • 12MB RAM

Notes:
Quelques paquetages binaires fournis par le Projet Firebird ont des pré requis plus importants. Les indications ci-dessus sont fondées sur des limites théoriques (bien que nous ayons vu des ordinateurs 486 avec 12MB de RAM exécutant Firebird 1.5), et vous devrez compiler Firebird pour qu'il fonctionne sur des machines de moindre configuration.

Les exécutables de Firebird 2.1 (et plus) proposés au téléchargement ne fonctionnent plus pour Windows 98 et NT . Si vous voulez qu'ils fonctionnent pour ces plateformes vous devrez compiler votre propre portage. La raison en est que les exécutables sont maintenant compilés avec Microsoft Visual Studio 2005 supportant les plateformes 64bits, et le runtime de VS2005 ne fonctionne pas sur les anciens systèmes.

15MB d'espace sur le disque dur est pour une installation du serveur. Vous devrez également avoir la place nécessaire pour vos bases de données et pour les tris. L'espace libre recommandé doit d'être d'au moins deux fois la taille de vos bases.

12MB de RAM conviendra à peine pour un système d'exploitation récent et les basculements vers le disque dès que plusieurs applications sont lancées. Pour des performances optimales vous devriez avoir autant de RAM que possible de façon à ce que tous les tris soient faits en mémoire et que la base de données entière puisse être en cache. Considérez que 2GB de RAM pour 200MB de base de données est le minimum .

Bien que Firebird puisse s'exécuter sur un 486, il est recommandé d'utiliser des CPU plus modernes avec des possibilités comparables à celles des requis de vos applications.
Traduction réalisée depuis http://www.firebirdfaq.org/faq66/

Mis à jour le 1er mai 2009 SergioMaster

Exécutez l'installation de Firebird avec l'une de ces options :

/SILENT, /VERYSILENT, /SP-

Qui indiquent à l'installateur d'être silencieux ou très silencieux.
Quand le setup est silencieux le wizard et la fenêtre d'arrière plan ne sont pas visibles, par contre la fenêtre de progression oui.
Quant le setup est très silencieux même cette fenêtre de progression est invisible.
Tout autre chose est une installation normale, même l'écran de démarrage est affiché. Pour ne pas afficher l'écran de démarrage utilisez /SP-

Pour d'autres options et plus d'informations , installez Firebird et lisez le fichier installation_scripted.txt dans le sous-répertoire 'doc' de votre installation.
Toutes ces indications en proviennent .
Traduction réalisée depuis http://www.firebirdfaq.org/faq193/

Mis à jour le 1er mai 2009 SergioMaster

Court: Vous ne devriez pas.

Long : Firebird nécessite que les bases de données soient sur des disques durs locaux. La raison en est que le serveur Firebird a besoin d'avoir un accès exclusif au fichier base de données et que ce n'est pas possible sur des disques partagés (lecteur réseau partagé via le gestionnaire de réseau Windows ou Samba).
L'accès exclusif est nécessaire car toute tentative d'écriture dans la base par deux processus amènerait rapidement à une corruption de la base.

Donc, gardez vos bases de données sur des disques locaux. Si vous avez besoin d'y accéder à partir d'un autre ordinateur, installez-y Firebird. Il est léger et ne prend que quelques mégas sur le disque.

Note: Il existe une option de configuration dans le fichier firebird.conf pour contourner ceci, mais il est hautement recommandé de ne pas l'utiliser.

Traduction réalisée depuis http://www.firebirdfaq.org/faq46/

Mis à jour le 1er mai 2009 SergioMaster

Oui, fbembed est une bibliothèque normale, fournissez lui seulement la chaine de connexion complète.

Sous Windows, le mode embarqué est en mode Super Serveur, sous Linux en Classic.
Traduction réalisée depuis http://www.firebirdfaq.org/faq50/

Mis à jour le 20 juin 2009 SergioMaster

Réponse courte: OUI

Réponse longue :

Cela dépend du protocole réseau utilisé pour accéder à la base de données Firebird. Chaque connexion NetBEUI (Named Pipes) utilise un accès fichier via le gestionnaire de réseau Windows (un pipe est un type de fichier) et nécessite une licence. Ces connexions ont une chaine de connexion de ce style :

Code text : Sélectionner tout
\\nom_serveur\chemin\vers\base.fdb
Cependant, si vous utilisez le protocole TCP/IP vous pouvez servir un nombre illimité de clients car il n'est restreint par aucune licence.
Comme TCP/IP est le protocole le plus courant et la méthode préférée d'accès au serveur, nous pouvons donc conclure que les licences ne sont pas un problème avec Firebird: vous pouvez avoir autant de clients que désiré.
Les connexions TCP/IP ont une chaine de connexion de ce type :

Code text : Sélectionner tout
nom_serveur:c:\chemin\vers\base.fdb
Traduction réalisée depuis http://www.firebirdfaq.org/faq252/

Mis à jour le 20 juin 2009 SergioMaster

Ces méthodes peuvent s'appliquer à toutes les versions de Firebird 2 ou ultérieures. Mais attention, à ce jour les versions 2.0.x et antérieures ne sont plus supportées par la fondation Firebird.

On pourra mixer différentes versions de Firebird (2.1, 2.5), mais aussi les déclinaisons 32 et 64 bits dans un environnement 64 bits.

Comme il s'agit d'installer un service, vous devrez détenir les droits d'administration du serveur sur lequel vont se dérouler les opérations.

  1. Téléchargez l'archive ZIP de la version de Firebird dont vous avez besoin : http://www.firebirdsql.org/en/downloads/
  2. Décompressez cette archive dans un répertoire adéquat, donnez un nom pertinent à votre répertoire d'installation et à l'instance associée !
    (par exemple : C:\Program Files\Firebird\Fb_253_SS pour une installation de Firebird 2.5.3 qui va fonctionner en mode SuperServer).
  3. Editez le fichier de configuration de votre installation firebird.conf, où vous modifierez le numéro de port de connexion principal (et auxiliaire si vous utilisez les messages de notification d'événements) au serveur :
    Code : Sélectionner tout
    1
    2
    3
    4
    #RemoteServicePort = 3050 # Valeur par défaut 
    RemoteServicePort = 3150 
    #RemoteAuxPort = 0 # Non configuré par défaut 
    RemoteAuxPort = 3151
  4. Ouvrez une fenêtre en ligne de commande, placez vous dans le sous-répertoire bin de votre installation (suivant notre exemple C:\Program Files\Firebird\Fb_253_SS\bin) et saisissez la commande suivante :
    Code : Sélectionner tout
    install_super Fb_253_SS
    Vous devez obtenir les messages de réponse suivants
    instsvc version WI-V2.5.3.26778 Firebird 2.5
    Service "Firebird Guardian - Fb_253_SS" successfully created.
    Service "Firebird Server - Fb_253_SS" successfully created.
    Service "Firebird Guardian - Fb_253_SS" successfully started.

    Si vous souhaitez que le service fonctionne en mode ClassicServer, saisissez la commande suivante (en indiquant un nom d'instance pertinent ):
    Code : Sélectionner tout
    install_classic Fb_253_CS
    Vous devez obtenir les messages de réponse suivants (il n'y a pas de Guardian dans ce mode) :
    instsvc version WI-V2.5.3.26778 Firebird 2.5
    Service "Firebird Server - Fb_253_CS" successfully created.
    Service "Firebird Server - Fb_253_CS" successfully started.

    Si vous préférez le mode SuperClassic, saisissez :
    Code : Sélectionner tout
    install_superclassic Fb_253_SC
    Vous devez obtenir les messages de réponse suivants (il n'y a pas de Guardian dans ce mode) :
    instsvc version WI-V2.5.3.26778 Firebird 2.5
    Service "Firebird Server - Fb_253_SC" successfully created.
    Service "Firebird Server - Fb_253_SC" successfully started.

  5. Le serveur de nom d'instance Fb_253_SS est maintenant opérationnel. Avec ISQL, on peut créer une base de données :
    Code : Sélectionner tout
    1
    2
    3
    4
    5
    6
    C:\Program Files\Firebird\Firebird_253_SS\bin>isql 
    Use CONNECT or CREATE DATABASE to specify a database 
    SQL> CREATE DATABASE 'localhost/3150:C:\Databases\Fb25\MaBase.fdb' 
    CON> page_size 4096 
    CON> user 'SYSDBA' 
    CON> password 'masterkey';
    Ultérieurement, on peut accéder à cette base de données de la même manière :
    Code : Sélectionner tout
    1
    2
    3
    4
    C:\Program Files\Firebird\Firebird_253_SS\bin>isql 
    Use CONNECT or CREATE DATABASE to specify a database 
    SQL> CONNECT 'localhost/3150:C:\Databases\Fb25\Mabase.fdb' 
    CON> user 'SYSDBA' password 'masterkey';
  6. Pour la désinstallation, avant toute suppression de fichiers, il faut arrêter le service de notre instance. Saisissez
    Code : Sélectionner tout
    uninstall Fb_253_SS
    Vous devez obtenir les messages de réponse suivants :
    Service "Firebird Guardian - Fb_253_SS" successfully stopped.
    instsvc version WI-V2.5.3.26778 Firebird 2.5
    Service "Firebird Guardian - Fb_253_SS" successfully deleted.
    Service "Firebird Server - Fb_253_SS" successfully deleted.



Il suffit de réitérer le processus pour les instances suivantes...

Si l'instance par défaut de Firebird est déjà installée, on peut la conserver en veillant tout simplement à ce que les instances suivantes utilisent des paramètres différents.

Mis à jour le 15 septembre 2014 Ph. B.

Proposer une nouvelle réponse sur la FAQ

Ce n'est pas l'endroit pour poser des questions, allez plutôt sur le forum de la rubrique pour ça


Réponse à la question

Liens sous la question
précédent sommaire suivant
 

Les sources présentées sur cette page sont libres de droits et vous pouvez les utiliser à votre convenance. Par contre, la page de présentation constitue une œuvre intellectuelle protégée par les droits d'auteur. Copyright © 2024 Developpez Developpez LLC. Tous droits réservés Developpez LLC. Aucune reproduction, même partielle, ne peut être faite de ce site et de l'ensemble de son contenu : textes, documents et images sans l'autorisation expresse de Developpez LLC. Sinon vous encourez selon la loi jusqu'à trois ans de prison et jusqu'à 300 000 € de dommages et intérêts.