【转】python3+Django+MySQL+pymysql

使用python3和Django搭建自己的服务器的时候使用的是sqlite数据库,一切顺利.

可是等到布置生产环境的时候要换成MySQL,根据Django官网的文档也设置好了setting.DATABASES.

但是运行python3 manage.py makemigrations的时候又遇到错误了,查看日志大概的问题就是:

ImportError: No module named 'MySQLdb',可是之前明明已经pip3 install pymysql了,大概是因为Django默认的还是使用MySQLdb吧. 尝试使用pymysql代替'MySQLdb'.

在站点的__init__.py文件中添加

import pymysql
pymysql.install_as_MySQLdb()

提交到服务器然后python3 manage.py makemigrations 然后python3 manage.py migrate成功.

这样Django站点就成功使用MySQL作为数据库了.

配置settings使用mysql数据库:


DATABASES = {
'default': {
# 'ENGINE': 'django.db.backends.sqlite3',
# 'NAME': os.path.join(BASE_DIR, 'db.sqlite3'),
'ENGINE': 'django.db.backends.mysql',
'NAME': 'my_blog',
'USER':'root',
'PASSWORD':'root',
'HOST':'localhost',
'PORT':'3306',
}
}

【转自】:http://www.jianshu.com/p/82781add8449

原文地址:https://www.cnblogs.com/zhzhang/p/6714058.html