无法通过Django连接MySQL
我安装了mysql,然后在python的命令行里输入 import MySQLdb
是可以正常工作的。我还把settings.py文件改成了:
**DATABASE_ENGINE = 'mysql'
DATABASE_NAME = '/home/database/my_db.db'
DATABASE_USER = ''
DATABASE_PASSWORD = ''
DATABASE_HOST = ''
DATABASE_PORT = ''**
但是当我测试连接的时候,它失败了。
终端显示:
>>> from django.db import connection
>>> cursor = connection.cursor()
出现了这个错误:
OperationalError: (2002, "无法通过套接字 '/var/run/mysql' 连接到本地 MySQL 服务器 (2)")
2 个回答
1
你在运行一个MySQL服务器吗?它是在:
- 本地(使用unix域套接字),还是
- 本地(使用tcp),还是
- 本地但无法访问,还是
- 其他地方的服务器?
另外,数据库的名字是MySQL能理解的名称,而不是文件路径。
1
Django说它的引擎应该是 https://docs.djangoproject.com/en/dev/ref/settings/#engine 'django.db.backends.mysql'
我认为数据库名称是指mysql里面的数据库名字,而不是一个路径。路径只是用于sqlite的。你有在运行mysql服务器吗?
USER和PASSWORD是必须的。host默认是localhost,端口默认是3306。