MySQL insert into select锁表的问题(下)

        上一篇讲到MySQL中使用insert into select时,事务隔离级别为默认的REPEATABLE-READ时会产生锁,

那么在此时如果使用update对表进行dml操作时,就有可能产生锁等待甚至死锁。

         这里给出一个方案就是讲事务隔离级别改成READ-COMMITTED,设置方法:

SET GLOBAL tx_isolation = 'READ-COMMITTED';

SET SESSION tx_isolation = 'READ-COMMITTED';

此时还应将binlog_format改成ROW或者MIXED

SET GLOBAL binlog_format = 'ROW';

或者修改配置文件

transaction-isolation = READ-COMMITTED
 
  
 
  
binlog_format = MIXED

你可能感兴趣的:(MySQL insert into select锁表的问题(下))