C# MySQL 命令超时



我已经指定了 4 秒的command_timeout。

<小时 />

但是当我运行应用程序时,该命令大约需要 8-12 秒才能超时。

<小时 />

我还在MySQL连接字符串中指定了连接超时,但没有运气

默认命令超时 = 4

它适用于MsSqll和Oracle,但不适用于MySQL。

有没有办法指定超时?

我在那里找到了 https://forums.mysql.com/read.php?38,634568,634568 的问题,但没有答案。

编辑

代码示例

...         
DataTable outputNodes = new DataTable();
Stopwatch sw = new Stopwatch();
cmd.CommandTimeout = 4;
sw.Start();
var a = cmd.ExecuteReader();
sw.Stop();
ex_time = sw.Elapsed;
sw.Reset();
outputNodes.Load(a);
CloseConnection();
...

这可能是连接器/NET 中的一个错误。我在CommandTimeout遇到了许多错误,例如错误 88124、错误 87307。我想我什至记得在实际超时之前提交了一份关于MySqlCommand需要 2× CommandTimeout 的错误报告(这听起来像您的情况(,但现在我找不到它(如果我真的提交了它(。

如果您有一致的重现,我建议您在 bugs.mysql.com 提交错误。

如果您可以灵活地更改驱动程序,请尝试MySqlConnector,它具有更强大的CommandTimeout实现。

相关内容

  • 没有找到相关文章

最新更新