Django 使用 MySQL 数据库


Django 默认使用 SQLite 数据库,但是显然在实际生产环境中,我们需要更强健的数据库作为支撑。

Django 支持的数据库包括:

  • PostgreSQL
  • MariaDB
  • MySQL
  • Oracle
  • SQLite

通常情况下,我们会采用 MySQL 作为数据库,本文将介绍 Django 使用 MySQL 作为后端数据库,所需的相应配置内容 & 相关注意点。

使用流程

1) 在 MySQL 中,手动创建数据库

CREATE DATABASE <dbname> CHARACTER SET utf8;

Django expects the database to support Unicode (UTF-8 encoding) and delegates to it the task of enforcing transactions and referential integrity.

2) 修改 settings.py 文件 示例如下:

DATABASES = {
    'default': {
        'ENGINE': 'django.db.backends.mysql',
        'NAME': '<mysql_database_name>',
        'USER': '<mysql_user_name>',
        'PASSWORD': '<mysql_password>',
        'HOST': '<mysql_host>',
        'PORT': '<mysql_port>',
    }
}
  • HOST 默认为 localhost
  • NAME 为数据库所使用的名称(对于 SQLite 来说,相当于整个库文件)
  • PASSWORD 所使用的连接密码
  • PORT 所使用的连接端口
  • USER 所使用的连接用户名

参考文档: 1) Django Databases 2) Django Setting Databases