MYSQL 事务测试

Posted 自由港

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了MYSQL 事务测试相关的知识,希望对你有一定的参考价值。

mysql 事务测试

创建张表 lock1 

增加字段 id,name 。

增加两条记录 

1,a

2,b

启动第一个会话

BEGIN;

update lock1 set name=\'c\' where id=1;

update lock1 set name=\'d\' where id=2;

启动第二个会话

BEGIN;

update lock1 set name=\'c\' where id=2;

update lock1 set name=\'d\' where id=1;

 

执行顺序

分别执行 第一条更新语句。

再执行第一个会话的第二条语句,第二个会话的第二条语句。

这个时候就会产生行锁。

通过以下语句查看 锁。

查看当前事务:

SELECT * FROM INFORMATION_SCHEMA.INNODB_TRX;

查看锁定的事务

 SELECT * FROM INFORMATION_SCHEMA.INNODB_LOCKS;

可以等一会,可以查看到锁消失了,mysql 会释放锁,但是事务还在。

两个会话分别执行 rollback 语句,事务相继消失。

 

以上是关于MYSQL 事务测试的主要内容,如果未能解决你的问题,请参考以下文章

MYSQL 事务测试

如何在 MySql 中对事务提交超时进行单元测试?

mysql事务隔离级别测试

MySQL事务与存储引擎

MySQL索引事务及存储引擎

MySQL索引事务及存储引擎