zoukankan      html  css  js  c++  java
  • mysql InnoDB 的行锁

    表的引擎类型必须为InnoDB才可以进行此操作。

    相关链接:http://www.cnblogs.com/CyLee/p/5579672.html

    共享锁:单独运行前两句,然后新建一个会话使用第三句、会发现无法使用。然后使用第四句即可解除锁.

    注意,必须为where条件所指定的列名添加索引或者本身为主键索引。否则会变成无法实现行锁,而会变成表锁

    (PS:表锁的相关链接:http://www.cnblogs.com/CyLee/p/5575152.html)

    (PS:表索引的相关链接:http://www.cnblogs.com/CyLee/p/5595100.html)

    START TRANSACTION;
    
    SELECT * FROM user_balance WHERE id = '15' LOCK IN SHARE MODE;  

    UPDATE user_balance SET user_money = '1000' WHERE id = '15'  

    UPDATE user_balance SET user_money = '1000' WHERE id = '16'  

    COMMIT;
  • 相关阅读:
    Linux
    Other
    Linux
    VIM
    Linux
    其他
    Win10
    Win10
    IDE
    其他
  • 原文地址:https://www.cnblogs.com/CyLee/p/5580012.html
Copyright © 2011-2022 走看看