Wen*_*Jun 19 mysql isolation-level
如何设置MySQL 5.1 InnoDB的隔离级别?
输入:
mysql>显示'%isola%'等变量;
InnoDB的默认级别是可重复读取.
如何更改隔离级别?
Nie*_*sol 36
SET SESSION TRANSACTION ISOLATION LEVEL READ UNCOMMITTED
SESSION是可选的,只是将设置限制为当前会话.
READ UNCOMMITTED将被替换为您想要的级别.
小智 7
您可以设置 4 个事务隔离级别和 4 个范围,如下所示。*该文档更详细地解释了如何设置事务隔离级别,我的答案解释了如何在 MySQL 中显示事务隔离级别:
对于PERSIST范围,即使重新启动 MySQL 后事务隔离级别也不会重置:
SET PERSIST TRANSACTION ISOLATION LEVEL READ UNCOMMITTED;
或者:
SET PERSIST transaction_isolation = 'READ-UNCOMMITTED';
或者:
SET @@PERSIST.transaction_isolation = 'READ-UNCOMMITTED';
对于GLOBAL作用域,事务隔离级别在重启 MySQL 后会重置:
SET GLOBAL TRANSACTION ISOLATION LEVEL READ COMMITTED;
或者:
SET GLOBAL transaction_isolation = 'READ-COMMITTED';
或者:
SET @@GLOBAL.transaction_isolation = 'READ-COMMITTED';
对于SESSION作用域,事务隔离级别在退出 MySQL 后会重置:
SET SESSION TRANSACTION ISOLATION LEVEL REPEATABLE READ;
或者:
SET SESSION transaction_isolation = 'REPEATABLE-READ';
或者:
SET @@SESSION.transaction_isolation = 'REPEATABLE-READ';
或者:
SET transaction_isolation = 'REPEATABLE-READ';
如果没有范围,事务隔离级别将在执行下一个事务后重置:
SET TRANSACTION ISOLATION LEVEL SERIALIZABLE;
或者:
SET @@transaction_isolation = SERIALIZABLE;
连接 mysql 数据库时,只需将其添加到连接字符串中即可。
?sessionVariables=transaction_isolation='READ-COMMITTED'
您可以检查其他隔离级别的值。
| 归档时间: | 
 | 
| 查看次数: | 36970 次 | 
| 最近记录: |