MySQL中锁有何必要性及类别

  

下文主要给大家带来MySQL中锁有何必要性及类别,希望这些内容能够带给大家实际用处,这也是我编辑MySQL中锁有何必要性及类别这篇文章的主要目的。好了,废话不多说,大家直接看下文吧又是;,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,

当用户访问量增长时,数据库往往是一个系统的性能瓶颈,但不光光是性能瓶颈,数据安全也会随之浮现,这时候锁机制就非常有必要。

并发造成的数据安全问题主要分为3个方面:脏读,幻读,不可重复读

一。脏读

脏读就是一个事务读取到了另一个事务未提交的数据。

时间线事务1事务2
  1开始;
  2选择*从锁id=1;
  3开始;
  4更新锁集名称=& # 39;脏# 39;;
  6 select *从锁id=1;
  7提交;提交;

二。幻读

幻读就是一个事务读到了另一个事务插入的数据

时间线事务1事务2
  1开始;
  2从锁,id选择*比;1;
  3开始;
  4插入锁选择2;
  5提交;
  6从锁,id选择*比;1;
  7提交;

三。不可重复读

不可重复读就是多次读取统一数据返回的结果不一致。同脏读不同,这是读取已经提交的数据,同幻读也不同,这边是更新数据,幻读是插入数据。

时间线事务1事务2
  开始;
  select *从锁id=1;
  开始;
  更新锁集名称=& # 39;non-rr& # 39;;
  提交;
  select *从锁id=1;
  之前提交; 

MySQL通过对事务的隔离来解决以上三种问题
共有4种隔离级别

<>之前隔离级别脏读幻读不可重复读   未提交读(RUC)是是是   已提交读(RC)否是是   可重复读(RR)否是否   可串行化否否否

MySQL通过锁机制来实现事务的隔离

锁的分类如下

 MySQL中锁有何必要性及类别

对于以上关于MySQL中锁有何必要性及类别,大家是不是觉得非常有帮助。如果需要了解更多内容,请继续关注我们的行业资讯,相信你会喜欢上这些内容的。

MySQL中锁有何必要性及类别