怎么使用innodb行锁
发布时间:2021-12-17 10:15:58 所属栏目:MySql教程 来源:互联网
导读:本篇内容主要讲解怎么使用innodb行锁,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习怎么使用innodb行锁吧! 三种级别 record lock 锁住某一行记录 gap lock 锁住某一段范围中的记录 next key lock 是前两者效果的
本篇内容主要讲解“怎么使用innodb行锁”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“怎么使用innodb行锁”吧! 三种级别 record lock 锁住某一行记录 gap lock 锁住某一段范围中的记录 next key lock 是前两者效果的叠加 实验环境 mysql> select @@tx_isolation; +-----------------+ | @@tx_isolation | +-----------------+ | REPEATABLE-READ | +-----------------+ 1 row in set (0.00 sec) mysql> select * from t; +------+ | id | +------+ | 2 | | 8 | | 19 | | 22 | +------+ mysql> create index t_ind on t(id); Query OK, 0 rows affected (8.52 sec) 同时打开两个会话,并打开事物 会话一 mysql> start transaction; Query OK, 0 rows affected (0.00 sec) mysql> delete from t where id=19; Query OK, 1 row affected (0.00 sec) 会话二 mysql> start transaction; Query OK, 0 rows affected (0.00 sec) mysql> insert into t values(55); Query OK, 1 row affected (0.00 sec) mysql> insert into t values(10); ^C^C -- query aborted ERROR 1317 (70100): Query execution was interrupted mysql> mysql> insert into t values(1); Query OK, 1 row affected (0.00 sec) mysql> insert into t values(12); ^C^C -- query aborted ERROR 1317 (70100): Query execution was interrupted mysql> 会话二说明8-22之间被锁住了,无法插入数据.这就是gap lock 取消gap lock 修改事物的隔离级别到READ COMMITTED 到此,相信大家对“怎么使用innodb行锁”有了更深的了解,不妨来实际操作一番吧!这里是亿速云网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习! (编辑:威海站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |