我有两台服务器,都运行CentOS 5.7和cPanel-CURRENT。一个是x86,另一个是x64。两者都使用Apache 2.2.21,PHP 5.3.8和MySQL 5.1。
如果我在任何一台服务器上查询本地数据库,则会立即返回结果。在这种情况下,返回了几千个结果。但是,从一个服务器到另一个服务器运行相同的查询,查询需要10秒以上才能完成。
如果我使用MySQL Workbench 5.2从我的工作站使用相同的查询查询远程数据库,它会在不到一秒的时间内完成,这让我觉得PHP或服务器相关的其他问题。
之前是否有其他人遇到此问题并知道如何解决此问题?任何帮助将不胜感激。
答案 0 :(得分:12)
首先猜测:
这可能是DNS问题,您可以在--skip-name-resolve
中使用my.cnf
选项,或者您只能在MySQL授权表中使用IP地址。
第二次猜测:
这可能是安全级别的问题,我建议暂时disable selinux
或防火墙再次运行测试。
答案 1 :(得分:4)
我在PHP / MySQL应用程序中遇到了这个问题。
只是想分享为my.ini添加“skip-name-resolve”为我修复它。我对桌面1上的应用程序使用IP地址访问桌面2(mysql)感到有些困惑。我正在两个Windows 7桌面之间。