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
- Les UDFs Firebird 1.5 peuvent elles être utilisées avec le serveur 2.0 ?
- Où trouver Firebird 2 pour Ubuntu ou Debian?
- Impossible de se connecter au serveur local si le cable réseau est déconnecté
- Comment installer Firebird embarqué sous Linux?
- Pourquoi le mode Classic n'a pas de variable CPUAffinity dans firebird.conf ?
- Pourquoi ai-je besoin de libstdc++-5.0 ?
- Qu'est ce que le Guardian de Firebird ?
- Où est la documentation sur les options de la commande d'installation?
- Quelle est la meilleure configuration de Firebird sur un serveur Citrix ?
- Est-ce que Firebird fonctionne sous Windows Vista?
- Est-ce que Firebird fonctionne sous Windows XP embarqué?
- Qu'est-ce que ces paquetages NPTL ?
- Quels sont les pré requis systèmes pour Firebird?
- Y a t-il un moyen de faire une installation silencieuse de Firebird?
- Puis-je accéder à une base de données sur un lecteur réseau partagé ?
- Est-ce que fbembed.dll peut être utilisée comme bibliothèque client pour accéder aux serveurs Firebird distants?
- Est-ce que de nombreux utilisateurs réseaux peuvent utiliser Firebird sans qu'il y ait infraction à la licence Microsoft Windows?
- Comment installer plusieurs instances de Firebird en tant que service sous Windows ?
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/
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/
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/>
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/
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/
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/
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 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/
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/
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/
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/
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
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/
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
Code text : | Sélectionner tout |
getconf: Unrecognized variable `GNU_LIBPTHREAD_VERSION'
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/
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/
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/
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/
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/
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
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
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.
- Téléchargez l'archive ZIP de la version de Firebird dont vous avez besoin : http://www.firebirdsql.org/en/downloads/
- 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). - 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
- 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
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.
Code : Sélectionner tout install_classic Fb_253_CS
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.
Code : Sélectionner tout install_superclassic Fb_253_SC
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.
- 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
6C:\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';
Code : Sélectionner tout 1
2
3
4C:\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';
- 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
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.
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 çaLes 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.