Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/database/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Mysql 为什么我们需要在酸中隔离?_Mysql_Database_Acid - Fatal编程技术网

Mysql 为什么我们需要在酸中隔离?

Mysql 为什么我们需要在酸中隔离?,mysql,database,acid,Mysql,Database,Acid,我正在学习ACID,但不太明白原子和隔离之间的区别 根据我的理解,如果事务是原子的,这意味着事务相关数据的完整性在事务成功时写入DB,而不是在事务失败时写入DB 那么我们为什么需要隔离呢? 它不能被其他人看到时,失败的肯定,如果原子是保证 原子性意味着单个事务要么完全执行,要么根本不执行。例如,如果你有两个账户行,你想把钱从一个账户转到另一个账户,你会看到一个账户的金额增加,另一个账户的金额减少,或者根本没有变化 隔离意味着独立事务不受干扰。因此,如果在同一帐户行中有多个并发事务,则可以确保每个

我正在学习ACID,但不太明白原子和隔离之间的区别

根据我的理解,如果事务是原子的,这意味着事务相关数据的完整性在事务成功时写入DB,而不是在事务失败时写入DB

那么我们为什么需要隔离呢?


它不能被其他人看到时,失败的肯定,如果原子是保证

原子性意味着单个事务要么完全执行,要么根本不执行。例如,如果你有两个账户行,你想把钱从一个账户转到另一个账户,你会看到一个账户的金额增加,另一个账户的金额减少,或者根本没有变化

隔离意味着独立事务不受干扰。因此,如果在同一帐户行中有多个并发事务,则可以确保每个事务都是独立于其他事务执行的。因此,如果您在account表中同时有多个转账,则结果将与串行处理的结果相同。

上的完整wiki文章引用了上的wiki文章,其中详细介绍了该概念。究竟什么需要澄清?