mysql X锁和S锁

mysql X锁和S锁基本的封锁类型有两种:

排它锁(X锁)和共享锁(S锁):

  • 所谓X锁,是事务T对数据A加上X锁时,只允许事务T读取和修改数据A

  • 所谓S锁,是事务T对数据A加上S锁时,其他事务只能再对数据A加S锁,而不能加X锁,直到T释放A上的S锁

    若事务T对数据对象A加了S锁,则T就可以对A进行读取,但不能进行更新(S锁因此又称为读锁),在T释放A上的S锁以前,其他事务可以再对A加S锁,但不能加X锁,从而可以读取A,但不能更新A.

    http://www.cnblogs.com/digdeep/archive/2015/11/16/4968453.html

  • 学习了mysql加锁机制,RC,RR,与字段的索引还有关系,如何防止死锁,不同情况的加锁。

  • 学习where条件的过滤

    给定一条SQL,如何提取其中的where条件?where条件中的每个子条件,在SQL执行的过程中有分别起着什么样的作用?

    http://hedengcheng.com/?p=577

    Index Key 索引查找,第一遍找出最小值,随后需要逐个比较是否满足最大值的条件,得到最大值。

    Index First Key --- Index Last Key

    Index Filter 索引过滤,对于索引查找出的值,均需要与索引过滤条件对比

    Table Filter 对于没有命中索引的字段,需要回表查出完整记录,对其进行过滤

你可能感兴趣的:(mysql X锁和S锁)