• 技术文章 >数据库 >MySQL

    mysql中行锁是什么

    小妮浅浅小妮浅浅2021-07-01 09:26:55原创2805

    说明

    1、InnoDB的行锁是针对索引加的锁,不是针对记录加的锁。并且该索引不能失效,否则都会从行锁升级为表锁。

    注意

    2、行级锁都是基于索引的,如果一条SQL语句用不到索引是不会使用行级锁的,会使用表级锁。

    实例

    # Transaction-A
    mysql> set autocommit = 0;
    mysql> update innodb_lock set v='1001' where id=1;
    mysql> commit;
     
    # Transaction-B
    mysql> update innodb_lock set v='2001' where id=2;
    Query OK, 1 row affected (0.37 sec)
    mysql> update innodb_lock set v='1002' where id=1;
    Query OK, 1 row affected (37.51 sec)

    以上就是mysql中行锁的介绍,希望对大家有所帮助。更多mysql学习指路:MySQL

    推荐操作系统:windows7系统、mysql5.8、DELL G3电脑

    专题推荐:mysql行锁
    上一篇:mysql乐观锁如何实现 下一篇:mysql如何解除死锁

    相关文章推荐

    • mysql分组查询是什么• mysql间隙锁是什么• mysql中如何共享读锁• mysql使用关联查询的注意点• mysql中LIMIT分页如何优化• mysql查询优化策略有哪些• mysql乐观锁如何实现

    全部评论我要评论

    © 2021 Python学习网 苏ICP备2021003149号-1

  • 取消发布评论
  • 

    Python学习网