Les différents moteurs de stockage de MySQL: MyISAM
II. Le moteur MyISAM
- Licence : GPL
- Version de MySQL : Depuis la version 3.23, MyISAM a remplacé le moteur ISAM
- Type : Moteur Non transactionnel.
- Domaines d’application :
– Recherche FULL-TEXT (texte intégrale).
– Tables en lecture seule.
– Tables de Log. - Information : Documentation officielle de MyISAM
II-A. Description
Depuis sa création, il est devenu le moteur par défaut de MySQL. Il a remplacé Isam en y ajoutant des extensions. En raison de sa souplesse, simplicité et rapidité, MyISAM gagne en popularité dans les applications du web.
Il est très utilisé pour le web car, comme il ne gère ni les clés étrangères, ni les transactions, il n’a pas à vérifier la validité des enregistrements. Cela permet donc un précieux gain de temps sur des tables très fréquemment ouvertes en écriture/lecture.
En effet, lorsque vous faites des suppressions sur des champs de type VARCHAR, CHAR, BLOB ou TEXT, le moteur supprime le contenu mais la place précédemment supprimée est conservée et peut être réutilisée ultérieurement.
OPTMIZE va défragmenter la table afin de gagner de la place et ainsi faciliter l’accès aux données sur cette table.
OPTIMIZE
maTable;
Rien ne sert d’exécuter cette commande sur toutes les tables en permanence. Vous risquez de faire baisser les performances si beaucoup de connexions s’effectuent en même temps.
Cette commande doit être utilisée seulement sur des tables dont la taille évolue rapidement.
D’après ses détracteurs, MySQL ne serait pas capable de gérer les transactions.
En réalité, les personnes ayant utilisé MySQL ne savaient pas qu’il était possible de changer de moteur. Ils sont tombés sur le moteur par défaut, MyISAM, qui ne gère pas les transactions.
- maTable.FRM : Fichier de définition de la table
- maTable.MYD : Fichier contenant les données de la table
- maTable.MYI : Fichier d’index