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

Requêtes MySQL Discussion :

InnoDB vs MyISAM [Fait]


Sujet :

Requêtes MySQL

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé Avatar de Sayrus
    Profil pro
    Inscrit en
    Décembre 2005
    Messages
    899
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : Belgique

    Informations forums :
    Inscription : Décembre 2005
    Messages : 899
    Par défaut InnoDB vs MyISAM
    Bonjour,

    Je me demandais quel moteur choisir pour de meilleure performances pour un site avec beaucoup de contenu?

    Est-il préférable d'utiliser MyISAM et de faire des jointures

    ou utiliser INNODB pour utiliser les clés étrangères?


    Merci

  2. #2
    Membre chevronné Avatar de SphynXz
    Développeur Web
    Inscrit en
    Mars 2008
    Messages
    439
    Détails du profil
    Informations personnelles :
    Âge : 39

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Mars 2008
    Messages : 439
    Par défaut
    tout dépend de la rigueur que tu souhaite apporter à ta base de données

    en matière de stockage, MyISAM est limité à presque autant d'octet par table qu'InnoDB (65to / 64to respectivement je crois)

    Après en ce qui concerne ton contenu, le seul avantage qu'aurait MyISAM serait l'index FULLTEXT et encore...

    Moi je te conseille InnoDB, mais ne te contente pas d'un seul avis

  3. #3
    Membre éclairé Avatar de Sayrus
    Profil pro
    Inscrit en
    Décembre 2005
    Messages
    899
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : Belgique

    Informations forums :
    Inscription : Décembre 2005
    Messages : 899
    Par défaut
    Ok merci

    Mais les bases de données utilisant MyISAM ne sont pas plus facile a copier? (copier/coller du répertoire)

    J'ai vu que pour innoDB, si les tables sont reliées entre elles via des foreign_keys, si je supprime un utilisateur, et que cet utilisateur a posté dans un forum, commentaires, etc.

    Tout ce qui est en relation avec cet utilisateur est supprimé? Est-ce vrai?

    Donc gain en requête SQL, mais aussi danger de perdre du contenu?

  4. #4
    Membre chevronné Avatar de SphynXz
    Développeur Web
    Inscrit en
    Mars 2008
    Messages
    439
    Détails du profil
    Informations personnelles :
    Âge : 39

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Mars 2008
    Messages : 439
    Par défaut
    Crois bien que les mec d'Oracle (qui ont créé InnoDB ) y ont pensé. et tu as enfait le choix.

    Soit tu supprime l'utilisateur et tou ce qui en rapport avec lui est supprimé. donc dans l'exemple d'un forum, sa signature, ses posts, ses sujets etc...

    sinon tu supprime l'utilisateur et ca ne fait rien d'autres

    et cette distinction est on ne peut plus simple à faire


    et pour la copie des base de données, en général c'est déconseillé de copier les repertoires. Même si tu as raison, l'arboressence d'un dossier MyISAM est plus claire

    pour copier des base de données le mieux c'est de la dumper ! (en faire un backup autrement dit )

  5. #5
    Membre éclairé Avatar de Sayrus
    Profil pro
    Inscrit en
    Décembre 2005
    Messages
    899
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : Belgique

    Informations forums :
    Inscription : Décembre 2005
    Messages : 899
    Par défaut
    Ok merci

    InnoDB à l'air bien pensé! Je me demande comment ça ce fait que des CMS open-source tels que joomla sont toujours en MyISAM.

    Pour faire la distinction, c'est dans la requête de suppression?

  6. #6
    Membre Expert

    Homme Profil pro
    SDE
    Inscrit en
    Août 2007
    Messages
    2 013
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : Etats-Unis

    Informations professionnelles :
    Activité : SDE

    Informations forums :
    Inscription : Août 2007
    Messages : 2 013
    Par défaut
    Bonjour,

    Ces distinctions se gère dans la structure de la table, il est possible de faire un certain nombre d'actions au delete ou a l'update d'une table liée.

    J'ai écrit a ce sujet un article qui traite de ce genre de pratique, tu y verra l'intérêt de ces foreign key appuyé d'exemple : http://alain-defrance.developpez.com...D/contraintes/

    Je te recommande donc aussi innodb qui gère beaucoup mieux l'intégrité.

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

Discussions similaires

  1. [mysql5] tables innodb devenu myisam
    Par epeichette dans le forum SQL Procédural
    Réponses: 1
    Dernier message: 19/04/2011, 20h44
  2. Migration InnoDB vers MyISAM impossible ?
    Par yotta dans le forum Administration
    Réponses: 4
    Dernier message: 04/09/2010, 15h14
  3. Différence entre Innodb et MyIsam
    Par Stu76 dans le forum SQL Procédural
    Réponses: 2
    Dernier message: 20/02/2008, 09h41
  4. innodb et myisam
    Par phil83 dans le forum Requêtes
    Réponses: 3
    Dernier message: 19/10/2005, 11h57
  5. convertir InnoDB en MyISAM
    Par wizze dans le forum SQL Procédural
    Réponses: 1
    Dernier message: 19/08/2005, 11h02

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