mysql 5.5 lock tables与隐式事务提交commit
短信预约 -IT技能 免费直播动态提醒
结论:lock tables可以隐式提交其它会话的未提交事务
测试明细:
----session 1
mysql> start transaction;
Query OK, 0 rows affected (0.00 sec)
mysql> show databases;
+--------------------+
| Database |
+--------------------+
| information_schema |
| mysql |
| performance_schema |
| test |
+--------------------+
4 rows in set (0.00 sec)
mysql> use test;
Database changed
mysql> create table t_commit(a int);
Query OK, 0 rows affected (0.04 sec)
---session 2
mysql> select count(*) from test.t_commit;
+----------+
| count(*) |
+----------+
| 0 |
+----------+
1 row in set (0.01 sec)
---session 1
mysql> insert into t_commit values(1);
Query OK, 1 row affected (0.01 sec)
---session 2
mysql> lock tables test.t_commit read local;
Query OK, 0 rows affected (0.00 sec)
mysql> select count(*) from test.t_commit;
+----------+
| count(*) |
+----------+
| 1 |
+----------+
1 row in set (0.00 sec)
测试明细:
----session 1
mysql> start transaction;
Query OK, 0 rows affected (0.00 sec)
mysql> show databases;
+--------------------+
| Database |
+--------------------+
| information_schema |
| mysql |
| performance_schema |
| test |
+--------------------+
4 rows in set (0.00 sec)
mysql> use test;
Database changed
mysql> create table t_commit(a int);
Query OK, 0 rows affected (0.04 sec)
---session 2
mysql> select count(*) from test.t_commit;
+----------+
| count(*) |
+----------+
| 0 |
+----------+
1 row in set (0.01 sec)
---session 1
mysql> insert into t_commit values(1);
Query OK, 1 row affected (0.01 sec)
---session 2
mysql> lock tables test.t_commit read local;
Query OK, 0 rows affected (0.00 sec)
mysql> select count(*) from test.t_commit;
+----------+
| count(*) |
+----------+
| 1 |
+----------+
1 row in set (0.00 sec)
免责声明:
① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。
② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341