我无法更改变量“ max_execution_time”

时间:2019-05-13 14:53:15

标签: mysql vbscript timeout odbc

我将max_execution_time变量从MySQL更改为60000,但是当我在VBScript中使用ODBC驱动程序进行查询时,结果仍为默认值30000。

用于更改变量值的查询:

SET max_execution_time = 60000;
SET GLOBAL max_execution_time = 60000;
SET SESSION max_execution_time = 60000;

在带ODBC的VBScript中使用的查询:

show variables like '%max_execution%';

我希望输出为60000,但实际输出为30000。

我正在Windows Server 2016上使用MySQL Server 5.7。

注意:该问题仅在ODBC上发生,因为我对PHP进行了相同的测试,返回值为60000。

任何人都不知道这可能是什么吗?

更新

这是我正在测试的脚本:

Dim strCon

strCon = "DRIVER = {MySQL ODBC 5.3 ANSI Driver}; SERVER = xxx.xxx.xxx.xxx; PORT = 3306; DATABASE = zadmin; USER = xxxx; PASSWORD = xxx; OPTION = 3; MULTI_STATEMENTS = 1;"

Dim oCon: Set oCon = WScript.CreateObject ("ADODB.Connection")
Dim oRs: Set oRs = WScript.CreateObject ("ADODB.Recordset")
oCon.Open strCon

Set oRs = oCon.Execute ("show variables like '% max_execution_time%';")

While Not oRs.EOF
    WScript.Echo oRs.Fields (1) .Value
    oRs.MoveNext
Wend
oCon.Close

Set oRs = Nothing
Set oCon = Nothing

1 个答案:

答案 0 :(得分:0)

我找到了解决此问题的方法。 MySQL ODBC驱动程序5.3.6或更高版本不会吸收MySQL服务器5.7.4或更高版本上'max_execution_time'变量的配置。 我通过安装5.1版的MySQL ODBC驱动程序解决了我的问题。