MySQL-python无法连接到服务器

时间:2011-02-02 05:39:50

标签: python mysql

这让我发疯了。

我在Vista上安装的.exe可用here中安装了Python 2.5和MySQL-python-1.2.3。

过去几周我一直在制作.php个页面并且连接正常,以便在我的浏览器中测试它们。

$dbcnx=@mysql_connect("localhost", "root", "mypassword")

我也一直在使用mysql命令行和

mysql.exe -uroot -pmypassword just fine.

但是,当我尝试将MySQLdb与

一起使用时
conn = MySQLdb.connect(host = "localhost", user = "root", passwd = "mypassword") 

我得到了

OperationalError: (2003, "Can't connect to MySQL server on 'localhost' (10061)")

我已经检查过MySQL在服务中运行。我在my.ini中检查了我的MySQL配置,它在port = 3306上运行。我甚至卸载并重新安装了MySQL 5.1。我在谷歌上阅读了几页连接问题和答案,但没有任何结果。它必须是我忽视的简单事物,但有没有人有更多的想法?

2 个答案:

答案 0 :(得分:15)

不要使用Windows版本(我所有的相关经验都在Linux上),但是如果你使用127.0.0.1代替localhost,我愿意打赌它会有效。

编辑: - 一点解释。

首先,检查mysqluser表中host字段中的条目(尽管默认情况下,您可能有三个根用于所有基础的条目)。最有可能的是,您的问题是由于MySQL服务正在侦听127.0.0.1:3306,而不是localhost:3306,并且python解释器未正确调用您的hosts文件或其他路由配置。

答案 1 :(得分:0)

确保已在防火墙中打开TCP端口3306以进行连接。

另请参阅此问题Can't connect to MySQL server on 'localhost' (10061)