Django配置MySQL数据库教程

背景:

本地开发、调试,我习惯用SQLIT数据库,因为方便。

带来一个问题,就是有时候会忘记配置其他环境的数据库配置。

环境:

  • Django 2.1
  • Python 3.6

教程

1. 安装MySQL支持库

pip install pymysql

2. 配置init.py文件

打开项目根目录下的_init__.py文件,添加以下内容:

import pymysql
pymysql.install_as_MySQLdb()

3. 配置settings.py中的MySQL配置

把原来的默认配置改为如下内容:

DATABASE = {
            'default': {
                'ENGINE': 'django.db.backends.mysql',
                'NAME': '数据库名',
                'USER': "数据库账户",
                'PASSWORD': "数据库密码",
                'HOST': "数据库地址",
                'PORT': 3306,       # 一般是默认的
            }
        }

4. 把刚安装的mysql库,添加到requirements.txt中

当前项目的shell环境下,执行pip freeze > requirements.txt,其他环境直接安装requirements.txt就好了。

注意:

如果你的Django 版本是2.2 ,如上操作,会提示报错。因为2.2版本修改了MySql的连接方式,建议改为其他django版本,或者用着如下的临时解决办法。

报错:django.core.exceptions.ImproperlyConfigured: mysqlclient

不建议用此方法。