Maison  >  Article  >  Quelles sont les propriétés ACID des transactions du système de base de données relationnelle ?

Quelles sont les propriétés ACID des transactions du système de base de données relationnelle ?

青灯夜游
青灯夜游original
2021-01-28 16:38:506555parcourir

Caractéristiques ACID des transactions du système de base de données relationnelle : 1. Atomicité : toutes les opérations de la transaction sont soit terminées, soit aucune. 2. Cohérence ; la base de données doit toujours être dans un état cohérent. 3. Indépendance ; les transactions simultanées ne s’affecteront pas. 4. Persistance ; une fois qu'une transaction est validée, les modifications qu'elle apporte seront enregistrées de manière permanente dans la base de données.

Quelles sont les propriétés ACID des transactions du système de base de données relationnelle ?

L'environnement d'exploitation de ce tutoriel : système Windows 7, mysql version 5.8, ordinateur Dell G3.

(Tutoriel recommandé : Tutoriel vidéo MySQL )

Les transactions sont au cœur des bases de données relationnelles. La raison pour laquelle les bases de données relationnelles ont prospéré au cours des dernières décennies est que leur prise en charge. pour les transactions est indissociable. Mais comme le dit le dicton, le succès est aussi mauvais que l'échec. Avec la croissance explosive du volume de données, en particulier le développement fulgurant du Big Data ces dernières années, les transactions de bases de données relationnelles sont devenues le goulot d'étranglement des performances des applications Internet. Les attributs des transactions de base de données rendent leurs performances plusieurs fois supérieures à celles des bases de données relationnelles pour certains types d'applications spéciales.

Parlons d'abord de ce qu'est une transaction. Une transaction est une transaction en anglais, qui est très similaire à une transaction dans le monde réel. Elle présente les quatre caractéristiques suivantes :

1. A (Atomicité) Atomicité

L'atomicité est facile à comprendre, c'est-à-dire que toutes les opérations de la transaction sont soit terminées, soit aucune. La condition du succès de la transaction est que toutes. les opérations de la transaction réussissent, tant qu'une opération échoue, la transaction entière échoue et doit être annulée.

Par exemple, par virement bancaire, le transfert de 100 yuans du compte A vers le compte B est divisé en deux étapes : 1) Retirer 100 yuans du compte A 2) Déposer 100 yuans sur le compte B ; Ces deux étapes sont soit complétées ensemble, soit non complétées ensemble. Si seule la première étape est terminée et que la deuxième étape échoue, l'argent sera de 100 yuans de moins sans raison.

2. Cohérence C (Cohérence)

La cohérence est également plus facile à comprendre, ce qui signifie que la base de données doit toujours être dans un état cohérent, et le fonctionnement des transactions ne changera pas. Les contraintes de cohérence d’origine de la base de données.

Par exemple, la contrainte d'intégrité existante a+b=10, si une transaction modifie a, alors b doit être modifié pour que a+b=10 soit toujours satisfait après la fin de la transaction, sinon la transaction échoue.

3. I (Isolement) Indépendance

La soi-disant indépendance signifie que les transactions simultanées ne s'affecteront pas si les données auxquelles une transaction doit accéder sont. Actuellement modifiée par une autre transaction, tant que l'autre transaction n'est pas validée, les données auxquelles elle accède ne seront pas affectées par la transaction non validée.

Par exemple, il y a une transaction qui transfère 100 yuans du compte A au compte B. Si la transaction n'est pas encore terminée, si B vérifie son propre compte à ce moment-là, il ne verra pas les 100 yuans nouvellement ajoutés. yuans.

4. D (Durabilité) Durabilité

La durabilité signifie qu'une fois qu'une transaction est validée, les modifications qu'elle apporte seront enregistrées de manière permanente dans la base de données, même si elle le sera. ne sera pas perdu même en cas de temps d'arrêt.

Reprenons l'exemple ci-dessus. Si le transfert est réussi et que la base de données est en panne, après le redémarrage, vous pouvez toujours voir le résultat du transfert réussi.

Pour plus de connaissances liées à la programmation, veuillez visiter :

Enseignement de la programmation ! !

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