【发布时间】:2019-07-02 16:03:09
【问题描述】:
如何更改 30'' 以上查询的执行时间限制?
如果我尝试
SET MAX_EXECUTION_TIME = 3600
我收到了
错误 1193“未知系统变量 MAX_EXECUTION_TIME”
我正在使用 MySQLWorkbench 和 mysql 版本 5.6.36
【问题讨论】:
标签: mysql
如何更改 30'' 以上查询的执行时间限制?
如果我尝试
SET MAX_EXECUTION_TIME = 3600
我收到了
错误 1193“未知系统变量 MAX_EXECUTION_TIME”
我正在使用 MySQLWorkbench 和 mysql 版本 5.6.36
【问题讨论】:
标签: mysql
如果您运行的是 MySQL 5.7.8 或更高版本,则可以使用
SET SESSION MAX_EXECUTION_TIME = 3600
为会话设置它,或者
SET GLOBAL MAX_EXECUTION_TIME = 3600
全局设置。请注意,此功能最初是在 MySQL 5.7.4 中作为max_statement_time 引入的;在 5.7.8 中名称已更改为 max_execution_time。
【讨论】:
SELECT @@version会得到什么?
如果您有 MySQL 5.7 或更高版本,此参数 MAX_EXECUTION_TIME 用于长时间运行的查询。
首先通过运行此查询检查当前值
> SELECT @@GLOBAL.MAX_EXECUTION_TIME @@SESSION.MAX_EXECUTION_TIME;
然后根据自己的需要进行设置。
> SET SESSION MAX_EXECUTION_TIME=3600;
> SET GLOBAL MAX_EXECUTION_TIME=3600;
【讨论】:
您可以尝试在查询级别设置它,例如
SELECT +MAX_EXECUTION_TIME(3600) * FROM T
MAX_EXECUTION_TIME(N) 应用于只读选择语句。
【讨论】: