Django 3.0+python3.7+MySQL

Django 3.0+python3.7+MySQL

Django框架中默认的数据库是sqlite。有时候想要在Django中使用MySQL,那要怎么设置呢?

1. 电脑MySQL安装配置

首先需要保证电脑上安装了MySQL并启动了MySQL服务。
安装启动参考:Windows上安装MySQL

2. 创建数据库

在连接前要先在MySQL中创建属于你的项目的数据库

create database 数据库名 charset=utf8;

一些相关命令:
登录:mysql -u root -p
展示数据库:show databases;
删除数据库:drop database <数据库名>;
使用数据库:use 数据库名;
显示数据库中的表:show tables;

3. 创建自己的Django项目

Django-admin.py startproject 项目名
这里假设我创建的项目是test1,那么项目目录如下:

-test1
 |–test1
  |–__init__.py
  |–asgi.py
  |–setting.py
  |–urls.py
  |–wsgi.py
 |–manage.py

然后在test1–>test1–>setting.py中修改如下内容:

DATABASES = {
    'default': {
        # 'ENGINE': 'django.db.backends.sqlite3', #这是原先的代码,注释掉
        # 'NAME': os.path.join(BASE_DIR, 'db.sqlite3'),#这是原先的代码,注释掉
        # 连接MySQL数据库
        'ENGINE': 'django.db.backends.mysql',
        'NAME':'test1data',# 数据库名 前面创建的数据库名
        'USER':'root',#数据库用户名
        'PASSWORD':'mysql',#密码 自己设置的root账户的密码
        'HOST':'localhost',#数据库所在电脑的IP,此处为本机
        'PORT':'3306',# 端口号
    }
}

4.安装mysqlclient

pip install mysqlclient
使用上述命令安装mysqlclient,之前的教程是说安装pymsql,但由于Django的不断升级,使用pymysql会有兼容性问题,会报错:

django.core.exceptions.ImproperlyConfigured: mysqlclient 1.3.13 or newer is required; you have 0.9.3.

然后有人针对这个错误推荐修改源码什么的,看着就很复杂,还不如一开始就选择安装mysqlclient。
如果你已经安装了pymysql,可以使用命令:
pip unstall pymysql
来卸载它。
还有如果之前安装pymysql的时候修改过__init__.py,需要把它删除掉:

# 连接mysql数据库
import pymysql
pymysql.install_as_MySQLdb()

删除掉以上内容,如果没有就不用了。
到此大功告成!

声明

转载请说明。
若有错误欢迎指正。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值