Maison  >  Article  >  base de données  >  Quelle est la différence entre MySQL et Myisam

Quelle est la différence entre MySQL et Myisam

WBOY
WBOYoriginal
2022-08-25 17:20:592025parcourir

La différence entre mysql et myisam est la suivante : mysql est un système de gestion de base de données relationnelle. Il s'agit d'une base de données basée sur le modèle relationnel. Il utilise des concepts et des méthodes mathématiques telles que l'algèbre ensembliste pour traiter les données dans la base de données, tandis que myisam est la valeur par défaut. pour MySQL. Moteur de base de données (avant la version 5.5) et ne prend pas en charge le traitement des transactions.

Quelle est la différence entre MySQL et Myisam

L'environnement d'exploitation de ce tutoriel : système windows10, version mysql8.0.22, ordinateur Dell G3.

Quelle est la différence entre mysql et myisam

myisam

Le moteur de base de données par défaut de MySQL

MyISAM est le moteur de base de données par défaut de MySQL (avant la version 5.5), qui a été amélioré par le premier ISAM. Bien que les performances soient excellentes, elle présente un inconvénient : elle ne prend pas en charge le traitement des transactions. Cependant, avec le développement de ces dernières années, MySQL a également introduit InnoDB (un autre moteur de base de données) pour renforcer le mécanisme de gestion de l'intégrité référentielle et des violations de concurrence, et a ensuite progressivement remplacé MyISAM.

Chaque table de données MyISAM est composée de 3 fichiers stockés sur le disque dur. Chaque fichier a le nom de la table de données comme nom principal du fichier, et est associé à différentes extensions pour distinguer le type de fichier :

  • .frm. - - Stocke les définitions des tables de données. Ce fichier ne fait pas partie du moteur MyISAM.

  • .MYD - stocke des données réelles.

  • .MYI——Informations sur l'index de stockage.

Comparaison avec InnoDB

InnoDB peut utiliser les fichiers journaux de transactions pour récupérer les erreurs de données causées par des pannes de programme (crash) ou des fins inattendues ; tandis que MyISAM rencontre des erreurs et doit être entièrement analysé. Ce n'est qu'alors que l'index peut être reconstruit ou le L'erreur non écrite sur le disque dur peut être corrigée. Le temps de réparation d'InnoDB est à peu près fixe, mais le temps de réparation de MyISAM est proportionnel à la quantité de données. Relativement parlant, à mesure que la quantité de données augmente, InnoDB aura une meilleure stabilité.

MyISAM doit s'appuyer sur le système d'exploitation pour gérer le cache de lecture et d'écriture, tandis qu'InnoDB dispose de son propre mécanisme de gestion du cache de lecture et d'écriture. (InnoDB ne transmettra pas immédiatement les pages de données modifiées au système d'exploitation) Par conséquent, dans certains cas, l'accès aux données d'InnoDB sera plus efficace que MyISAM.

InnoDB ne prend actuellement pas en charge les formats de compression et de lignes concises fournis par MyISAM, il utilise donc beaucoup de disque dur et de cache. Par conséquent, à partir de la version 5.0, MySQL propose un autre format avec une charge plus légère, ce qui peut réduire la charge du système d'environ 20 %, et il est prévu que la fonction de compression soit lancée dans une future nouvelle version.

Lorsque l'opération est entièrement conforme à ACID (transaction), bien qu'InnoDB fusionne automatiquement plusieurs connexions, chaque fois qu'une transaction se produit, elle doit toujours être écrite sur le disque dur au moins une fois. Par conséquent, pour certains disques durs ou baies de disques. , cela entraînera une limite de traitement des transactions de 200 fois. Si vous souhaitez obtenir des performances plus élevées et maintenir l'intégrité des transactions, vous devez utiliser la mise en cache disque et la batterie de secours. Bien entendu, InnoDB propose également plusieurs modes qui ont un impact moindre sur les performances, mais ils réduiront également l'intégrité des transactions. MyISAM n'a pas ce problème, mais ce n'est pas parce qu'il est plus avancé, c'est simplement parce qu'il ne prend pas en charge les transactions.

mysql

MySQL est un système de gestion de base de données relationnelle développé par la société suédoise MySQL AB et est actuellement un produit d'Oracle. MySQL est l'un des systèmes de gestion de bases de données relationnelles les plus populaires. En termes d'applications WEB, MySQL est l'un des meilleurs logiciels d'application RDBMS (Relational Database Management System).

MySQL est un système de gestion de base de données relationnelle. Une base de données relationnelle stocke les données dans différentes tables au lieu de placer toutes les données dans un seul grand entrepôt, ce qui augmente la vitesse et améliore la flexibilité.

Le langage SQL utilisé par MySQL est le langage standardisé le plus couramment utilisé pour accéder aux bases de données. Le logiciel MySQL adopte une double politique de licence et est divisé en version communautaire et version commerciale. En raison de sa petite taille, de sa vitesse rapide, de son faible coût total de possession et surtout de ses caractéristiques open source, MySQL est généralement choisi comme base de données de site Web pour le développement. de sites Web de petite et moyenne taille.

Grâce aux excellentes performances de sa version communautaire, il peut former un bon environnement de développement avec PHP et Apache.

Apprentissage recommandé : Tutoriel vidéo mysql

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn