MySQL ODBC错误“服务器已经消失”

时间:2010-10-20 09:01:33

标签: mysql iis asp-classic odbc ado

偶尔我们会看到ASP页面出错:

Microsoft OLE DB Provider for ODBC Drivers error '80004005'

[MySQL][MyODBC 5.00.11][MySQL] 2006 MySQL server has gone away

我们正在以最好的方式处理它,但它仍然会出现。我认为这与MySQL ODBC驱动程序有关,而不是ASP代码。我们从未在PHP代码中看到这一点,我们也在同一个IIS服务器下运行,但每次运行时PHP都会重新连接,而我相信ODBC驱动程序连接一次并保持连接。

我已检查过驱动程序中的设置,但似乎没有任何可以更改的内容以帮助缓解此问题。

任何人都可以解释为什么会这样,以及如何减少它发生的次数?

3 个答案:

答案 0 :(得分:0)

检查此链接,该错误导致此错误的原因很少。希望这会对你有所帮助 -

http://dev.mysql.com/doc/refman/5.0/en/gone-away.html

答案 1 :(得分:0)

不确定ASP,但在Java / Tomcat / DBCP中,我们能够在实际获得连接之前在连接池中粘贴一个简单的测试语句(例如SELECT 1)。也许在ASP中也有类似的东西吗?

答案 2 :(得分:0)

问题是连接超时。这不是您可以在ODBC级别更改的设置。我通过一个简单的查询每10秒轮询一次连接来绕过它。这使连接保持活跃。