我尝试按照下面的示例进行操作,但得到了不同的结果,即会话 A 中的第二个选择返回会话 B 插入的新行。
该示例来自http://dev.mysql.com/doc/refman/5.6/en/innodb-consistent-read.html。我正在使用 5.5。
Session A Session B
SET autocommit=0; SET autocommit=0;
time
| SELECT * FROM t;
| empty set
| INSERT INTO t VALUES (1, 2);
|
v SELECT * FROM t;
empty set
COMMIT;
SELECT * FROM t;
empty set
COMMIT;
SELECT * FROM t;
---------------------
| 1 | 2 |
---------------------
1 row in set
更新 我在会话 A 和 B 中都进行了如下更改,但问题仍然存在。
SET autocommit=0; -- I think this line is redundant given the line below
set transaction isolation level read committed;
start transaction;
任何想法?