No module named 'MySQLdb' Python3 + Django 2.0.3 + mysql 无法连接

问题概览:

学习Django连接mysql数据库的时候遇到了问题
首先安装mysql(Python 3不支持MySQL-python):

pip install pymysql

进入编辑 settings.py 

DATABASES = { 
    'default': {
    'ENGINE': 'django.db.backends.mysql',
    'NAME': 'pymysql_test',
    'USER': 'root',
    'PASSWORD': '123456',
    'HOST': 'localhost',
    'PORT': '3306',
    }
}

然后错误提示: ModuleNotFoundError: No module named 'MySQLdb' 

 

解决方法:

爬文章发现原来是不兼容的问题!

1、在项目文件夹下的 _init_.py 中导入 pymysql 包

import pymysql 
pymysql.install_as_MySQLdb()

2、在 settings.py 设置数据库

DATABASES = {
    'default': {
    'ENGINE': 'django.db.backends.mysql',
    'NAME': 'dbName',
    'USER':'dbUser',
    'PASSWORD':'dbPwd',
    'HOST':'dbHost',#默认本地
    'PORT':'dbPort' 
    }
}

这样子就能愉快地使用 pymysql 啦!

最后,嘻嘻!

参考文章

原文地址:https://www.cnblogs.com/Tylerrrkd/p/python3-mysql.html