mysql记录锁与互斥锁区别
MySQL中记录锁是针对一行数据进行的锁定,当一个事务对某一行数据进行修改时,MySQL会给该行数据加上记录锁,其他事务无法对该行数据进行修改操作,直到持有该行记录锁的事务提交或者回滚事务。
而互斥锁是MySQL中一种更为通用的锁,它可以用来保护一段代码或者数据结构,以保证在同一时刻只有一个事务能够访问该数据结构或者代码片段。互斥锁可以由多个事务共享,也可以由一个事务独占。
//示例代码-对单个数据添加记录锁 BEGIN; SELECT * FROM table WHERE id=1 FOR UPDATE; UPDATE table SET name='xxx' WHERE id=1; COMMIT;