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

InterBase Discussion :

Attaquer Interbase/Firebird en PHP


Sujet :

InterBase

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Inscrit en
    Juin 2004
    Messages
    40
    Détails du profil
    Informations forums :
    Inscription : Juin 2004
    Messages : 40
    Par défaut Attaquer Interbase/Firebird en PHP
    Bonjour,
    Ce message s'adresse avant tout aux personnes qui utilisent le couple PHP/Interbase ou PHP FireBird, mais j'ai une question plus générale:
    Que ce soit Interbase ou Firebird, la base de données semble être réduite à un seul fichier... Cela veut il dire que ce fichier va grossir... grossir? Et que tout est stocké à l'intérieur(trigger/données/procédures stockées)?

    Sous PHP il existe des fonctions ibase_XXXX() mais cela n'empeche pas de mettre le chemin qui pointe vers la BdD (c:\labase\Mabase.gdb)
    Ma question est donc de comprendre si c'est PHP qui contient le moteur de la base de données ou si cela fait appel au SGBDR installé sur la machine.

    Avec Firebird et PHP comment attaquer la BdD? via ODBC uniquement ou bien les fonctions ibase_XXX() de PHP peuvent aussi se faire vers firebird?

    Merci pour vos explications, je reserve d'autres question avoir compris un peu plus en détails le fonctionneement PHP/Interbase

    ATchao!
    Jfazer

  2. #2
    Membre Expert
    Avatar de Barbibulle
    Profil pro
    Inscrit en
    Octobre 2002
    Messages
    2 052
    Détails du profil
    Informations personnelles :
    Âge : 55
    Localisation : France

    Informations forums :
    Inscription : Octobre 2002
    Messages : 2 052
    Par défaut Re: Attaquer Interbase/Firebird en PHP
    Citation Envoyé par jflebegue
    Que ce soit Interbase ou Firebird, la base de données semble être réduite à un seul fichier... Cela veut il dire que ce fichier va grossir... grossir? Et que tout est stocké à l'intérieur(trigger/données/procédures stockées)?
    Oui.
    Citation Envoyé par jflebegue
    Sous PHP il existe des fonctions ibase_XXXX() mais cela n'empeche pas de mettre le chemin qui pointe vers la BdD (c:\labase\Mabase.gdb)
    Ma question est donc de comprendre si c'est PHP qui contient le moteur de la base de données ou si cela fait appel au SGBDR installé sur la machine.
    C'est le chemin local de la machine sur lequel se trouve le serveur interbase. Par contre sous Firebird 1.5 la notion d'Alias a été introduite, ce qui veux dire qu'on peux dans le fichier de configuration de firebird définire un alias MaBase=c:\labase\MaBase.fdb et pour se connecter on ne donne pas le chemin mais le nom de l'Alias (MaBase)
    Citation Envoyé par jflebegue

    Avec Firebird et PHP comment attaquer la BdD? via ODBC uniquement ou bien les fonctions ibase_XXX() de PHP peuvent aussi se faire vers firebird?
    Les fonctions d'accés natives interbases fonctionnent pour attaquer firebird.

  3. #3
    Membre averti
    Inscrit en
    Juin 2004
    Messages
    40
    Détails du profil
    Informations forums :
    Inscription : Juin 2004
    Messages : 40
    Par défaut Re: Attaquer Interbase/Firebird en PHP
    Pour confirmation: Concernant le moteur interbase, en fait déclarer le module interbase dans le PHP.ini ne suffit pas, il faut aussi avoir installé Interbase, la dll php s'adresse alors à Interbase. exact?

    Je ne sais pas si j'ai été très clair...

    Citation Envoyé par jflebegue

    Avec Firebird et PHP comment attaquer la BdD? via ODBC uniquement ou bien les fonctions ibase_XXX() de PHP peuvent aussi se faire vers firebird?
    Citation Envoyé par barbibulle
    Les fonctions d'accés natives interbases fonctionnent pour attaquer firebird.
    Y a t'il des incompatibilités connues?

    Si le fichier grossit avec la quantité d'info stockée, les performances ne vont elles pas se dégrader? En toute logique oui mais les grosses Bases ne semblent pas poser de Pb à Interbase d'après le Forum...

  4. #4
    Membre Expert
    Avatar de Barbibulle
    Profil pro
    Inscrit en
    Octobre 2002
    Messages
    2 052
    Détails du profil
    Informations personnelles :
    Âge : 55
    Localisation : France

    Informations forums :
    Inscription : Octobre 2002
    Messages : 2 052
    Par défaut Re: Attaquer Interbase/Firebird en PHP
    Citation Envoyé par jflebegue
    Pour confirmation: Concernant le moteur interbase, en fait déclarer le module interbase dans le PHP.ini ne suffit pas, il faut aussi avoir installé Interbase, la dll php s'adresse alors à Interbase. exact?

    Je ne sais pas si j'ai été très clair...
    Oui Php s'adresse à la dll cliente d'interbase qui va se connecter au serveur interbase. Il faut donc installer la partie cliente d'interbase en plus de PHP. Et installer la partie serveur d'interbase sur le serveur (qui peut etre la même machine que le client).
    Citation Envoyé par jflebegue
    Citation Envoyé par jflebegue

    Avec Firebird et PHP comment attaquer la BdD? via ODBC uniquement ou bien les fonctions ibase_XXX() de PHP peuvent aussi se faire vers firebird?
    Citation Envoyé par barbibulle
    Les fonctions d'accés natives interbases fonctionnent pour attaquer firebird.
    Y a t'il des incompatibilités connues?
    Je n'en ai pas rencontré, de toute facon avec Firebird 1.0 c'est l'equivallent d'interbase 6.0 avec des corrections de bugs, il n'y a pas de nouveauté donc c'est 100% compatible.
    Avec Firebird 1.5 la dll cliente est modifiée et donc adaptée aux nouveautées de firebird. Mais la DLL cliente d'interbase6.0 fonctionne également pour attaquer FB1.5 simplement vous ne pourrez utiliser les nouveautées.
    Citation Envoyé par jflebegue
    Si le fichier grossit avec la quantité d'info stockée, les performances ne vont elles pas se dégrader? En toute logique oui mais les grosses Bases ne semblent pas poser de Pb à Interbase d'après le Forum...
    Non celà ne pose pas de problème. On est pas obligé de lire tout un fichier pour y trouver une information.... A moins de ne pas l'avoir correctement organisé (ce qui n'est pas le cas des SGBD, c'est lleur voccation).

    Tous les Gros SGBD sont dans un seul fichier, celà au contraire permet de s'affranchir de certaines contraintes liées aux systemes d'exploitation. Un petit exemple en system Fat32 un disque dur est fractionné en élément atomique les clusteurs. Plus la partition du disque est gros plus les clusteurs le sont. Par exemple un cluster peux faire 32Ko.
    Ce qui veux dire que si vous créez un fichier de 100 octets il occupera sur le disque 32Ko et donc 1000 fichiers de cette taille occuperont 32 Mo alors que si vous fusionnez vos 1000 fichiers il n'occuperont moins de 100Ko. Donc les performances pour lire 32 Mo ne vont pas être les même que pour lire 100 Ko et pourtant au final on restituera bien les memes données. Voilà il y a d'autres raisons à préférer un seul fichier que je ne développerai pas ici.
    Pour information il existe même des SGBD qui necessite non pas un gros fichier mais carrément une partition entière, qu'il agence spécialement pour lui.

  5. #5
    Membre averti
    Inscrit en
    Juin 2004
    Messages
    40
    Détails du profil
    Informations forums :
    Inscription : Juin 2004
    Messages : 40
    Par défaut Taille de fichiers...
    Merci pour cette réponse. c'est très clair .... Mais et oui j'ai un "mais", il me semble qu'il y a un des limites différentes selon les Os utilisés en terme de taille fichiers non? cela doit au final gener un SGBDR comme Interbase non?
    promis après ca je cloture cette discussion!


    Jfazer

  6. #6
    Membre Expert
    Avatar de Barbibulle
    Profil pro
    Inscrit en
    Octobre 2002
    Messages
    2 052
    Détails du profil
    Informations personnelles :
    Âge : 55
    Localisation : France

    Informations forums :
    Inscription : Octobre 2002
    Messages : 2 052
    Par défaut
    Excellente remarque en effet la taille max d'un fichier sous certain OS (dont je ne nommerais pas) est de 2Go par exemple.
    La solution interbase (adopté par d'autres SGBD également) est de créer une base sur plusieurs fichiers. On ne peux pas spécifier quels sont les tables qui seront dans tel ou tel fichier, ce n'est pas votre probleme mais celui du SGBD, par contre vous pouvez spécifier la taille de chaque fichier sauf pour le dernier qui n'a pas de taille max (du moins sa taille sera limité par les limites que l'OS lui impose).

  7. #7
    Membre averti
    Inscrit en
    Juin 2004
    Messages
    40
    Détails du profil
    Informations forums :
    Inscription : Juin 2004
    Messages : 40
    Par défaut
    Bon et bien maintenant je vais essayer de cerner un peu ce fameux Interbase et voir ce que j'en tire!
    Je reviendrai certainement avec d'autres questions...
    Merci
    Jfazer

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

Discussions similaires

  1. Mise en relation de PHP et une base de données Interbase/Firebird
    Par jipoil dans le forum PHP & Base de données
    Réponses: 0
    Dernier message: 12/03/2010, 14h40
  2. [Débat] Choisir InterBase/Firebird ou Microsoft SQL-SERVER ?
    Par asenaici dans le forum Décisions SGBD
    Réponses: 90
    Dernier message: 19/03/2009, 20h51
  3. Interbase/Firebird
    Par Cambon dans le forum Bases de données
    Réponses: 1
    Dernier message: 28/10/2004, 12h12
  4. [CHOIX BDD] Questions sur Interbase/Firebird ?
    Par Big K. dans le forum Décisions SGBD
    Réponses: 4
    Dernier message: 19/06/2004, 12h42
  5. [debutant] diff interbase / firebird
    Par bmayer dans le forum Débuter
    Réponses: 5
    Dernier message: 11/03/2004, 12h28

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