Django配置MySQL数据库及采坑记

本文涉及的产品
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
云数据库 RDS PostgreSQL,集群系列 2核4GB
RDS MySQL Serverless 高可用系列,价值2615元额度,1个月
简介: Django默认使用的数据库是SQLite,但在实际中大部分公司或个人开发者都会采用MySQL,原因肯定是MySQL比较好用啊。在配置MySQL的过程可能会出现一点问题,这里记录一下过程与问题记录Django的默认配置文件在生成项目时候,会有一个settings.py文件,里面有各种配置其中有一项是配置数据库的。

Django默认使用的数据库是SQLite,但在实际中大部分公司或个人开发者都会采用MySQL,原因肯定是MySQL比较好用啊。

在配置MySQL的过程可能会出现一点问题,这里记录一下过程与问题

记录

  1. Django的默认配置文件在生成项目时候,会有一个settings.py文件,里面有各种配置其中有一项是配置数据库的。

我们修改如下:

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

MySQL的详细配置信息在官网的这个位置:MySQL注意事项

到这里,我们是配置了Django使用MySQL数据库,但是python的mysql库还没有安装。

  1. 安装MySQL的python驱动,mysqlclient是MySQL的官方驱动,推荐用这个,但是在Mac上安装的时候会有小的bug,官网也指出了。不过不难解决

2.1 Mac系统安装mysqlclient. 首先安装mysql-connector-c

brew install mysql-connector-c

2.2 如果只执行上一步之后,直接安装会出现如下错误


img_71466f9f82431330fbd46ae53e4cc97e.png
image.png

2.3 进行修复,根据官网的提示,修改mysql_config,不管电脑上装了几个MySQL程序,修改brew安装的那个mysql_config,位置在/usr/local/bin/mysql_config

修改文件内容:
修改之前:


img_37b148e6de030a980717071c610a3436.png
image.png

修改之后:


img_411a043e07da94b1062c165e6a320d40.png
image.png

也就是从:

libs="$libs -l "

变为:

libs="$libs -lmysqlclient -lssl -lcrypto"
  1. 再次安装mysqlclient
img_134685ba83e0826d5a58b71abc04bd9e.png
image.png
  1. 启动项目即可。现在Django可以正常的使用MySQL数据库了。

最后

如有错误,欢迎指出。

相关实践学习
如何快速连接云数据库RDS MySQL
本场景介绍如何通过阿里云数据管理服务DMS快速连接云数据库RDS MySQL,然后进行数据表的CRUD操作。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助     相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
相关文章
|
2月前
|
关系型数据库 MySQL Java
【YashanDB知识库】原生mysql驱动配置连接崖山数据库
【YashanDB知识库】原生mysql驱动配置连接崖山数据库
【YashanDB知识库】原生mysql驱动配置连接崖山数据库
|
16天前
|
Ubuntu 关系型数据库 MySQL
在Ubuntu 22.04上配置和安装MySQL
以上就是在Ubuntu 22.04上配置和安装MySQL的步骤。这个过程可能看起来有点复杂,但只要按照步骤一步步来,你会发现其实并不难。记住,任何时候都不要急于求成,耐心是解决问题的关键。
117 30
|
29天前
|
关系型数据库 MySQL Linux
CentOS 7系统下详细安装MySQL 5.7的步骤:包括密码配置、字符集配置、远程连接配置
以上就是在CentOS 7系统下安装MySQL 5.7的详细步骤。希望这个指南能帮助你顺利完成安装。
262 26
|
20天前
|
存储 Oracle 关系型数据库
MySQL 8.4 配置SSL组复制(八个步骤)
MySQL 8.4 配置SSL组复制(八个步骤)
58 0
|
2月前
|
SQL 关系型数据库 MySQL
seatunnel配置mysql2hive
本文介绍了SeaTunnel的安装与使用教程,涵盖从安装、配置到数据同步的全过程。主要内容包括: 1. **SeaTunnel安装**:详细描述了下载、解压及配置连接器等步骤。 2. **模拟数据到Hive (fake2hive)**:通过编辑测试脚本,将模拟数据写入Hive表。 3. **MySQL到控制台 (mysql2console)**:创建配置文件并执行命令,将MySQL数据输出到控制台。 4. **MySQL到Hive (mysql2hive)**:创建Hive表,配置并启动同步任务,支持单表和多表同步。
220 15
|
4月前
|
数据管理 数据库 数据安全/隐私保护
Django—同一项目不同app使用不同数据库
在Django项目中实现不同app使用不同数据库的配置,可以通过配置多数据库、创建数据库路由和配置路由来实现。通过这种方法,可以有效地将数据隔离到不同的数据库,提高数据管理的灵活性和系统的可扩展性。希望本文能为开发者在Django项目中使用多数据库提供清晰的指导。
66 4
|
5月前
|
SQL 定位技术 数据库
深入探索Django ORM:高效数据库操作的秘诀####
本文旨在为读者揭开Django ORM(对象关系映射)的神秘面纱,通过一系列生动的比喻和详实的案例,深入浅出地讲解其核心概念、工作原理及高级特性。我们将一起探讨如何利用Django ORM简化数据库交互,提升开发效率,同时确保数据的一致性和安全性。不同于传统的技术文档,本文将以故事化的形式,带领读者在轻松愉快的氛围中掌握Django ORM的精髓。 ####
|
6月前
|
存储 SQL 关系型数据库
2024Mysql And Redis基础与进阶操作系列(1)作者——LJS[含MySQL的下载、安装、配置详解步骤及报错对应解决方法]
Mysql And Redis基础与进阶操作系列(1)之[MySQL的下载、安装、配置详解步骤及报错对应解决方法]
|
关系型数据库 MySQL 数据库
|
6月前
|
设计模式 前端开发 数据库
Python Web开发:Django框架下的全栈开发实战
【10月更文挑战第27天】本文介绍了Django框架在Python Web开发中的应用,涵盖了Django与Flask等框架的比较、项目结构、模型、视图、模板和URL配置等内容,并展示了实际代码示例,帮助读者快速掌握Django全栈开发的核心技术。
421 45