Mysql
 sql >> Base de données >  >> RDS >> Mysql

Tables MyISAM et InnoDB dans une seule base de données

Ces jours-ci, j'utilise toujours par défaut InnoDB, en particulier sur les tables intensives en écriture que vous mentionnez où MyISAM souffre d'un verrouillage complet de la table. Voici une comparaison précise.

Raisons d'utiliser MyISAM :

  • Les tables sont très rapides pour les charges lourdes sélectionnées
  • Les verrous au niveau des tables limitent leur évolutivité pour les environnements multi-utilisateurs intensifs en écriture.
  • La plus petite consommation d'espace disque
  • Index du texte intégral
  • Tableaux fusionnés et compressés.

Raisons d'utiliser InnoDB :

  • Transactions ACID
  • Verrouillage au niveau de la ligne
  • Lectures cohérentes :vous permet d'atteindre une excellente simultanéité de lecture et d'écriture.
  • Groupement de clés primaires :offre d'excellentes performances dans certains cas.
  • Prise en charge des clés étrangères.
  • Les pages d'index et de données peuvent être mises en cache.
  • Récupération automatique après un crash – dans le cas où l'arrêt de MySQL n'était pas propre, les tables InnoDB continueront à - récupérer à l'état cohérent - Aucune vérification/réparation comme MyISAM peut nécessiter.
  • Toutes les mises à jour doivent passer par le moteur transactionnel d'InnoDB, ce qui diminue souvent les performances par rapport aux moteurs de stockage non transactionnels.

Ce qui précède est tiré de ce site , qui semble ne plus fonctionner.