如何设置mysql查询的最长执行时间?

2021-11-20 00:00:00 time sql limit mysql

我想为 php 中的 set_time_limit() 等 sql 查询设置最长执行时间.我该怎么办?

I would like to set a maximum execution time for sql queries like set_time_limit() in php. How can I do ?

推荐答案

我以为它已经存在一段时间了,但是根据 this,

I thought it has been around a little longer, but according to this,

MySQL 5.7.4 引入了为顶级只读 SELECT 语句设置服务器端执行时间限制(以毫秒为单位指定)的功能.

MySQL 5.7.4 introduces the ability to set server side execution time limits, specified in milliseconds, for top level read-only SELECT statements.

SELECT 
/*+ MAX_EXECUTION_TIME(1000) */ --in milliseconds
* 
FROM table;

请注意,这仅适用于只读 SELECT 语句.

Note that this only works for read-only SELECT statements.

更新: 该变量是在 MySQL 5.7.4 中添加的,并在 MySQL 5.7.8 中重命名为 max_execution_time.(来源)

Update: This variable was added in MySQL 5.7.4 and renamed to max_execution_time in MySQL 5.7.8. (source)

相关文章