Maison  >  Article  >  base de données  >  Que signifie l’acide dans MySQL ?

Que signifie l’acide dans MySQL ?

下次还敢
下次还敢original
2024-05-01 20:48:39504parcourir

ACID dans MySQL inclut l'atomicité, la cohérence, l'isolation et la durabilité. L'atomicité garantit que toutes les transactions réussissent ou échouent ; la cohérence garantit que l'état de la base de données reste cohérent avant et après la transaction ; l'isolation garantit que les transactions simultanées ne s'affectent pas les unes les autres et la durabilité garantit que les modifications soumises sont enregistrées de manière permanente.

Que signifie l’acide dans MySQL ?

ACID dans MySQL

Qu'est-ce que ACID

ACID représente les quatre principales caractéristiques des transactions de base de données, à savoir l'atomicité, la cohérence, l'isolement et la durabilité.

Atomicité

L'atomicité signifie qu'une transaction est une unité indivisible, soit toutes les exécutions réussissent, soit toutes échouent. Lors de l'exécution de la transaction, même si une erreur survient, la base de données ne sera pas dans un état intermédiaire.

Cohérence

La cohérence signifie que l'état de la base de données reste cohérent avant et après l'exécution de la transaction. Lorsqu'une transaction démarre, la base de données est dans un état cohérent et lorsque la transaction se termine, la base de données est toujours dans un état cohérent.

Isolement

L'isolement signifie que les transactions simultanées ne s'affectent pas les unes les autres. Chaque transaction est considérée comme étant exécutée indépendamment et non affectée par d'autres transactions.

Persistance

La persistance signifie qu'une fois qu'une transaction est validée, ses modifications dans la base de données seront enregistrées de manière permanente, même si le système plante ou échoue.

ACID dans MySQL

MySQL prend en charge les transactions et suit les propriétés ACID.

  • Atomicité : MySQL utilise des journaux de rétablissement et d'annulation pour garantir l'atomicité. Le journal redo enregistre les modifications apportées à l'exécution de la transaction et le journal d'annulation enregistre l'état avant l'exécution de la transaction. Lorsqu'une transaction est validée, le journal redo applique les modifications à la base de données, garantissant ainsi que la transaction est indivisible.
  • Cohérence : MySQL utilise des contraintes (telles que des contraintes de clé étrangère) et des déclencheurs pour maintenir la cohérence. Les contraintes garantissent que les données sont conformes aux règles prédéfinies et les déclencheurs exécutent des actions automatiques lorsque des événements spécifiques se produisent pour maintenir l'intégrité de la base de données.
  • Isolation : MySQL utilise un mécanisme de verrouillage pour réaliser l'isolation. Lorsqu'une transaction accède à des données, celles-ci sont verrouillées pour empêcher d'autres transactions de modifier simultanément les mêmes données.
  • Persistance : MySQL écrit les modifications validées par les transactions dans le journal de rétablissement et les fichiers de données. Même si le système tombe en panne, les modifications validées peuvent être restaurées à partir du journal après un redémarrage.

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