MySQL8中隔离级别的变量跟之前的版本不一样,之前是tx_isolation,MySQL8改成了transaction_isolation。查看当前隔离级别的命令是
select @@global.transaction_isolation,@@transaction_isolation;
返回结果
+--------------------------------+-------------------------+ | @@global.transaction_isolation | @@transaction_isolation | +--------------------------------+-------------------------+ | READ-COMMITTED | REPEATABLE-READ | +--------------------------------+-------------------------+ 1 row in set (0.00 sec)
mysql的默认隔离级别是可重复读,但其实对高并发业务来说,可重复读并不是最合适的,最合适的是读提交,主要是因为MySQL 5.0之前,MySQL的主从复制在度提交这个隔离级别下是有bug的。
修改MySQL隔离级别命令:
修改全局隔离级别为读提交:
SET GLOBAL TRANSACTION ISOLATION LEVEL READ COMMITTED;
修改会话隔离级别
SET SESSION TRANSACTION ISOLATION LEVEL READ COMMITTED;
注:以上命令可大小写混用
这里要吐槽一下MySQL的命令,感觉比较混乱。比如查询出来的隔离级别是两个单词用短横线连接(READ-COMMITTED),但是设置的时候又是要把两个单词用空格分隔。风格很不统一。
来源:51CTO
作者:dbqb007
链接:https://blog.csdn.net/dbqb007/article/details/100859676