MySQL 8.0有一个新特性,允许事务立即超时,如果它试图访问另一个事务锁定的记录,而不是等待事务提交或等待超时,则会抛出一个错误。
有没有办法在MySQL 5.7中实现同样的效果?
发布于 2018-10-24 07:34:51
服务器端选择语句超时允许:
SET SESSION MAX_EXECUTION_TIME=2000;不完全一样,但很接近。
发布于 2020-12-18 21:56:53
MAX_EXECUTION_TIME可以用于SELECT语句。我需要它与INSERT语句一起工作:
SET SESSION INNODB_LOCK_WAIT_TIMEOUT = 2;为了使它适用于单个INSERT语句,我执行了以下操作:
SET @saved_lock_wait = @@SESSION.INNODB_LOCK_WAIT_TIMEOUT;
SET SESSION INNODB_LOCK_WAIT_TIMEOUT = 2;
-- The query...
SET SESSION INNODB_LOCK_WAIT_TIMEOUT = @saved_lock_wait;https://dba.stackexchange.com/questions/220866
复制相似问题