2017-04-16 110 views
0

首先,我尝试在.py中连接MySQL,它是成功的。Django错误连接mysql

import pymysql 
db = pymysql.connect(host='localhost',user='root',passwd='admin',port=3306) 
cursor = db.cursor() 
cursor.execute("SELECT VERSION()") 
data = cursor.fetchone() 
print ("Database version : %s " % data) 
db.close() 

但是,当我在Django的使用,是错误的

DATABASES = { 
    'default': { 
     'ENGINE': 'django.db.backends.mysql', 
     'NAME': 'testdb', 
     'USER':'root', 
     'PASEWORD':'admin', 
     'HOST':'localhost', 
     'PORT':'3306', 
    } 
} 

----错误:

django.core.exceptions.ImproperlyConfigured: Error loading MySQLdb module: No module named MySQLdb 

----我加入了 “进口pymysql” “settings.py”

错误:

ImportError: Could not import settings 'HelloWorld.settings' (Is it on sys.path? Is there an import error in the settings file?): No module named pymysql 

版本: MAC 蟒蛇3.6 Django的:1.7.11

回答

0

这听起来像你正在使用您的独立测试的.py和你的Django应用程序不同的虚拟环境;并且Django虚拟环境中未安装pymysql。

pip install mysqlclient 

点击这里你的Python的兼容性版本:https://pypi.python.org/pypi/mysqlclient

,并指定版本,安装这样的:

0

在虚拟环境使用PIP安装的mysql

pip install mysqlclient==x.x.x 

对于Python 2.7你可以使用1.3.4和最新版本1.3.10

+0

我用python 3.6和django:1.7.11 –

+0

好。安装并告诉我发生了什么 –

+0

要求已经满足:mysqlclient在/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-packages –