我正在使用Django教程,我想将我的项目连接到MySQL数据库。我按照djangoproject教程的说法完成了连接到数据库的所有操作。但是,在运行python manage.py syncdb
时,我得到了
以下错误:
_mysql_exceptions.OperationalError: (2003, "Can't connect to MySQL server on 'localhost' (10061)")
什么似乎有问题?我已经下载了XAMMP,之前我通过XAMMP创建了数据库,但我不知道如何 这会影响与Django的连接。
感谢。
答案 0 :(得分:4)
实际上在settings.py下,我将HOST
设置为“127.0.0.1”并将PORT
设置为3306,填写剩余的DATABASE
部分它工作了!
答案 1 :(得分:2)
如果您使用的是Windows 7,如果您的MySQL配置为使用命名管道,则可能会遇到问题。将MySQL配置设置为使用TCP。
重新配置的MySQL允许本地网络连接后,您的MySQLdb应该通过TCP工作。
似乎无法使用 Windows 7命名管道,虽然“mysql”命令行客户端可以。 可能存在错误。除非MySQL,否则不会注意到这一点 配置没有网络连接,这是罕见的。我设置 在具有本地MySQL实例的开发机器上以这种方式启动MySQL。
此处的详细文章 - http://interconnectit.com/764/using-mysql-workbench-with-xampp/ - 向您显示可以通过Xampp将连接方法从命名管道(本地套接字/管道)切换到TCP / IP的屏幕。
或者,如果使用命名管道(windows)或套接字(linux / mac)为你的python / django应用程序连接到你的MySQL很重要,你不想将你的连接方法改为TCP / IP,你应该尝试在xampp的my.conf配置文件中将servername设置为“。”;而不是“localhost”或“127.0.0.1”。使用管道/套接字绕过TCP / IP网络协议,性能稍好一些。