为什么mysql的排它锁加了之后其它的会话还照样能查询呢?

解决方案 »

  1.   

    不可能吧 
    mysql>lock tables $your_tab_name write then you get another session, but can not query now
      

  2.   

    lock tables $tab_name write;
    then i get another session, but can query also
      

  3.   

    看mysql的设置如何,如果是读锁优先的话,加写锁时其他session还是可以select的。
      

  4.   

     用--low-priority-updates启动mysqld。这将给所有更新(修改)一个表的语句以比SELECT语句低的优先级。
      

  5.   

    我目前使用的步骤如下:
    1.lock table aaa write;
    2.update table aaa;
    3.select from table aaa;
    4.update table aaa;
    5.unlock tables
    这样在有并发的时候还是出现了相同值,望高人解答