您的位置:首页 > 数据库 > MySQL

mysql数据库事务隔离级别

2016-01-26 15:21 267 查看
1修改事务隔离级别

全局修改

修改mysql.ini配置文件

[mysqlId]

transaction-isolation=REPEATBLE-READ

对当前session修改

登录mysql客户端后,执行命令set session transaction isolation level read uncommit;

select @@TX_ISOLATION;

2mysql有一个autocommit参数 默认是on(自动开始、自动提交、执行完后自动结束)

由于行锁在自动提交之后被释放,那么自动提交对于select for update的行锁机制没有用

3锁机制

共享锁:

由读表操作加上的锁,加锁后其他用户只能获取该表或行的共享锁,不能获取排他锁,也就是说只能读不能写

排他锁:

由写表操作加上的锁,加锁后其他用户不能获取该表或行的任何锁,典型是mysql事务中

4锁范围:

行锁:对某行记录加上锁

表锁:对整个表加上锁

5A用户对表某条数据进行修改时,为这行添加了行锁,所以其他用户不能对它进行修改

6可重复提交:B开启事务进行修改,B提交事务,A提交了事务,才可以查到B修改之后的数据

7可串行化(序列化)对表查询时就会对表或行加上共享锁,其他事务只能进行读操作
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: