ASP IIS 上的经典执行每个 mySQL 脚本需要 31 秒
ASP Classic On IIS Takes 31 Seconds To Execute Each mySQL Script
我的开发系统突然遇到了这个奇怪的问题,每个 SQL 脚本在我的经典 ASP 站点连接到 mySQL (MariaDB ) 数据库。
连接到我系统外的数据库 运行 的本地副本,甚至连接到托管在网络主机上的实时数据库,都是一样的。
一切都来自一个简单的
adoconn.Execute("SELECT * FROM users;")
甚至
adoconn.Execute("SET sql_mode''")
执行需要 31 秒。每个!
我可以安全地排除与数据库连接的任何问题,并且 运行 来自 DBeaver 的脚本完全没有问题。结果立即返回。
我还可以排除网络问题,因为本地数据库和托管数据库具有相同的结果,并且我使用 WireShark 确认 MySQL 数据包几乎立即从托管数据库得到响应。
调试单步执行我的 ASP 代码,一切运行正常,直到 .Execute() 将花费 31 秒,无论脚本有多复杂。
最奇怪的是,这个问题是突如其来的;当我的系统在周末断电、断开连接且未被触及时。没有对系统进行任何更新、安装或更改。星期五,我的开发工作做得非常好。但是星期一早上,当我重新启动它时,那里的数据库连接被塞满了。
我已经尝试配置 mySQL 以使用 "skip-name-resolve" 和 "bind-address = ::" 设置。
我曾尝试重建我的 IIS 网站并重新安装 IIS 本身。
我还在我的系统上重新安装了 mySQL ODBC 驱动程序,但没有用。
这是怎么回事?
事实证明,整个问题的起因是我的戴尔笔记本电脑中预装的 McAfee 软件。
不,请注意,我确实禁用了防火墙和防病毒软件。
这些是我做的第一步,并在我的测试过程中例行地进行了三次检查。 McAfee 的防火墙和自动保护都完全禁用。
但显然,McAfee 忽略了此设置,并通过 ODBC 破坏了我的数据库连接。
这个问题终于在我完全卸载这个 McAfee 恶意软件 后才告一段落。没有其他方式可以描述它。
让这个 post 成为对任何天真地认为此恶意软件是其他任何东西的人的警告。
我的开发系统突然遇到了这个奇怪的问题,每个 SQL 脚本在我的经典 ASP 站点连接到 mySQL (MariaDB ) 数据库。
连接到我系统外的数据库 运行 的本地副本,甚至连接到托管在网络主机上的实时数据库,都是一样的。 一切都来自一个简单的
adoconn.Execute("SELECT * FROM users;")
甚至
adoconn.Execute("SET sql_mode''")
执行需要 31 秒。每个!
我可以安全地排除与数据库连接的任何问题,并且 运行 来自 DBeaver 的脚本完全没有问题。结果立即返回。 我还可以排除网络问题,因为本地数据库和托管数据库具有相同的结果,并且我使用 WireShark 确认 MySQL 数据包几乎立即从托管数据库得到响应。
调试单步执行我的 ASP 代码,一切运行正常,直到 .Execute() 将花费 31 秒,无论脚本有多复杂。
最奇怪的是,这个问题是突如其来的;当我的系统在周末断电、断开连接且未被触及时。没有对系统进行任何更新、安装或更改。星期五,我的开发工作做得非常好。但是星期一早上,当我重新启动它时,那里的数据库连接被塞满了。
我已经尝试配置 mySQL 以使用 "skip-name-resolve" 和 "bind-address = ::" 设置。 我曾尝试重建我的 IIS 网站并重新安装 IIS 本身。 我还在我的系统上重新安装了 mySQL ODBC 驱动程序,但没有用。
这是怎么回事?
事实证明,整个问题的起因是我的戴尔笔记本电脑中预装的 McAfee 软件。 不,请注意,我确实禁用了防火墙和防病毒软件。 这些是我做的第一步,并在我的测试过程中例行地进行了三次检查。 McAfee 的防火墙和自动保护都完全禁用。 但显然,McAfee 忽略了此设置,并通过 ODBC 破坏了我的数据库连接。
这个问题终于在我完全卸载这个 McAfee 恶意软件 后才告一段落。没有其他方式可以描述它。
让这个 post 成为对任何天真地认为此恶意软件是其他任何东西的人的警告。