对于在Django 中连接MySQL 的驱动,有以下三种:

   1) mysqlclient

  2) mysql-connector-python

   3) pymysql (建议:这个包已经有一年未升级了,本人不建议使用)。

  下图是django 官方文档对mysql 的驱动的说明:

  现对这2个驱动,做下实验:

环境:

PC1  centos7  mysql8.0.17

PC2  centos7  python3.7.4,   pycharm 社区版

一.  mysqlclient 的安装:

(注意:mysql8.0 的密码加密方式是:caching_sha2_password, 而不是 5.5, 5.6, 5.7 版本的  mysql_native_password。 所以,mysqlclient 暂时只能连接mysql8.0 以下的版本)

  A. 针对不同版本的linux, 可以参考: https://pypi.org/project/mysqlclient/     本文以centos系统为例。

  B. 安装依赖包: yum install python-devel  python3-devel  mysql-devel

  C. 安装mysqlclient 包:  pip install mysqlclient

  D. 创建一个Django 的项目。修改其setting 文件:  

    

  E. 然后生成迁移文件,并执行迁移程序。

    python manage.py makemigrations

    python mangage.py migrate

二. mysql-connector-python 的安装:

  这是mysql的官方的驱动包,对于mysql 不同版本的加密方式,不受影响。

  A. 安装包: pip install mysql-connector-python

  B. 修改Django 项目中的setting文件中的 ENGINE 的配置:

  C. 然后生成迁移文件,并执行迁移程序。

    python manage.py makemigrations

    python mangage.py migrate

Django 连接MySQL的驱动设置的更多相关文章

  1. django连接mysql数据库以及建表操作

    django连接mysql数据库需要在project同名的目录下面的__init__.py里面加入下面的东西 import pymysql pymysql.install_as_MySQLdb() 找 ...

  2. python测试开发django-10.django连接mysql

    前言 Django 对各种数据库提供了很好的支持,包括:PostgreSQL.MySQL.SQLite.Oracle.本篇以mysql为例简单介绍django连接mysql进行数据操作 Django连 ...

  3. Django 连接mysql数据库中文乱码

    Django 连接mysql数据库中文乱码 2018年08月25日 20:55:15 可乐乐乐乐乐 阅读数:566   版本:CentOS6.8 python3.6.4 django1.8.2 数据库 ...

  4. django 连接MYSQL时,数据迁移时报:django.db.utils.InternalError: (1366, "Incorrect string value: '\\xE9\\x97\\xAE\\xE9\\xA2\\x98' for column 'name' at row 5")

    django 连接MYSQL时,数据迁移时报:django.db.utils.InternalError: (1366, "Incorrect string value: '\\xE9\\x ...

  5. Django 连接 MySQL 数据库及常见报错解决

    目录 Django 连接 MySQL数据库及常见报错解决 终端或者数据库管理工具连接 MySQL ,并新建项目所需数据库 安装访问 MySQL 的 Python 模块 Django 相关配置 可能会遇 ...

  6. [技术博客]django连接mysql数据库的方法及部分问题的解决方法

    配置机器介绍 操作系统:Ubuntu 18.04.2 LTS 64位 python版本:Python 3.6.7 Django版本:Django 2.2 MySql版本:5.7.26 数据库选择 我们 ...

  7. python连接mysql的驱动

    对于py2.7的朋友,直接可以用MySQLdb去连接,但是MySQLdb不支持python3.x.这是需要注意的~ 那应该用什么python连接mysql的驱动呢,在stackoverflow上有人解 ...

  8. Python3:Django连接Mysql数据库时出错,'Did you install mysqlclient or MySQL-python?'

    Python3:Django连接Mysql数据库时出错,'Did you install mysqlclient or MySQL-python?' 一.原因 因为Python版本问题,MySQLdb ...

  9. Python3之Django连接mysql数据库

    一.mysql服务器 系统版本:CentOS6.8 IP :10.0.0.51 版本 1.授权root远程登录 grant all on *.* to 'root'@'%' identifide by ...

随机推荐

  1. Python学习笔记(二)——列表

    Python学习笔记(二)--列表 Python中的列表可以存放任何数据类型 >>> list1 = ['Hello','this','is','GUN',123,['I','Lov ...

  2. css----7渐变

    linear-gradient(90deg,red 10%,yellow 20%,green 30%) <!DOCTYPE html> <html> <head> ...

  3. PHP微信公众号支付弹出“NaN:undefined”解决方法

    最近研究php微信支付开发,从微信官方下载了微信支付的demo后,测试时总是弹出NaN:Undefined这样的错误提示.不过这个并不影响支付的操作,支付成功后依然可以正常获取到支付状态,并进行跳转. ...

  4. Java 多线程 - synchronized与Lock的区别

    https://blog.csdn.net/qq_39521554/article/details/81130442 http://www.cnblogs.com/huangbw/p/8516024. ...

  5. python 之单例模式

    单例模式1 单例=>只有一个单例2 静态方法+静态字段3 所有实例中等转的内容相同时 用单例模式class Sqllite: __instance=None def __init__(self) ...

  6. PHP跨服务器提交数据

    关于类似的问题,百度上一搜一大堆,这只是我自己实际用过的两个方法,不多BB直接上代码 1.第一种: 2.第二种 可以随意切换POST和GET提交方式

  7. python queue, pipe, manage

    线程中的Queue import time import threading import queue import random def putMessage(): for i in "H ...

  8. mongodb操作指令(二):索引,聚合,管道

    索引 索引本质上是树,最小的值在最左边的叶子上,最大的值在最右边的叶子上,使用索引可以提高查询速度(而不用全表扫描),也可以预防脏数据的插入(如唯一索引) 索引通常能够极大的提高查询的效率, 如果没有 ...

  9. nodejs之连接mysql数据库

    一:demo var mysql = require('mysql'); var connection = mysql.createConnection({     host    : '192.16 ...

  10. 18-3-bind

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...