Django配置MySQL数据库及采坑记

本文涉及的产品
云数据库 RDS MySQL,集群版 2核4GB 100GB
推荐场景:
搭建个人博客
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
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数据库了。

最后

如有错误,欢迎指出。

相关实践学习
基于CentOS快速搭建LAMP环境
本教程介绍如何搭建LAMP环境,其中LAMP分别代表Linux、Apache、MySQL和PHP。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助     相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
目录
相关文章
|
12天前
|
Prometheus 监控 Cloud Native
如何优化Java中的数据库连接池配置?
如何优化Java中的数据库连接池配置?
|
14小时前
|
存储 JavaScript 前端开发
Django + Vue 实现图片上传功能的全流程配置与详细操作指南
 在现代Web应用中,图片上传是一个常见且重要的功能。Django作为强大的Python Web框架,结合Vue.js这样的现代前端框架,能够高效地实现这一功能。本文将详细介绍如何在Django项目中配置图片上传的后端处理,并在Vue前端实现图片的选择、预览和上传功能。
|
8天前
|
运维 关系型数据库 MySQL
【实操记录】MySQL主从配置
本文使用MySQL原生支持的主从同步机制,详细记录了配置步骤及运维操作方法,可供大家直接参考、使用。 本文假设已经部署了两台主机的MySQL软件,且数据库服务正常,详细部署步骤可本站搜索:"mysql二进制安装包部署"
18 0
|
10天前
|
ARouter 关系型数据库 MySQL
Django项目同时连接多个不同的数据库(7)
【7月更文挑战第7天】在Django项目中配置连接多个数据库,你需要: 1. 在`settings.py`中配置多个数据库, 2. 在`settings.py`内设置数据库路由,指定每个应用使用的数据库,
23 2
|
12天前
|
关系型数据库 MySQL 数据库连接
Django如何修改项目名,修改数据库(5)
【7月更文挑战第5天】 ### 项目迁移与数据库更换步骤 1. 修改项目目录和配置文件名。 2. 更新`manage.py`中的模块名。 3. 全局替换`settings.py`中的旧项目名。 4. 删除旧路由配置。 5. 在`settings.py`中更新`DATABASES`,配置新的数据库连接(如MySQL)。 6. 从`INSTALLED_APPS`和可能的`DATABASE_APPS_MAPPING`中移除无用模块。
14 3
|
12天前
|
SQL 数据库 Python
Django框架数据库ORM查询操作(6)
【7月更文挑战第6天】```markdown Django ORM常用数据库操作:1) 查询所有数据2) 根据ID查询 3) 精确查询 4) 分页排序
19 1
|
14天前
|
数据库 Python
Django数据库类库MySQLdb使用详解
在Django中使用MySQLdb数据库类库,需要遵循以下步骤: 1. 安装MySQLdb:首先,需要在你的Python环境中安装MySQLdb类库。可以使用pip工具进行安装,命令如下:`pip install mysqlclient` 1. 配置Django数据库设置:在Django的settings.py文件中,需要配置DATABASES字典,用于指定使用MySQLdb以及数据库的相关信息。配置样例如下: ``` DATABASES = { 'default': { 'ENGINE': 'django.db.backends.mysql',
16 3
|
15天前
|
弹性计算 NoSQL 网络安全
软件开发常见之云数据库Redis连接不上如何解决,修改配置后,需要重启下redis服务,配置才能生效呢,是重启,而不是重载配置,最后导致的问题是点击了的重启,配置修改了之后必须点击重启,而不是修改
软件开发常见之云数据库Redis连接不上如何解决,修改配置后,需要重启下redis服务,配置才能生效呢,是重启,而不是重载配置,最后导致的问题是点击了的重启,配置修改了之后必须点击重启,而不是修改
|
1天前
|
分布式计算 DataWorks 关系型数据库
MaxCompute操作报错合集之配置mysql数据源querysql模式,同步到MC时遇到报错,该怎么处理
MaxCompute是阿里云提供的大规模离线数据处理服务,用于大数据分析、挖掘和报表生成等场景。在使用MaxCompute进行数据处理时,可能会遇到各种操作报错。以下是一些常见的MaxCompute操作报错及其可能的原因与解决措施的合集。
|
3天前
|
SQL DataWorks 关系型数据库
DataWorks产品使用合集之如何配置MySQL数据源
DataWorks作为一站式的数据开发与治理平台,提供了从数据采集、清洗、开发、调度、服务化、质量监控到安全管理的全套解决方案,帮助企业构建高效、规范、安全的大数据处理体系。以下是对DataWorks产品使用合集的概述,涵盖数据处理的各个环节。

推荐镜像

更多