django连接mysql配置方法总结(推荐)

yipeiwu_com7年前Python基础

最近在学习django,学到第五章模型时,需要连接数据库,然后,在这里分享一下方法。

起初是不知道怎样配置mysql数据库,但是还好,django的官网上面有相关的配置方法,下面就直接给分享一下。

这是settings文件里面的基础配置,使用的是sqlite,那我们需要连接其他数据库呢?

DATABASES = {
  'default': {
    'ENGINE': 'django.db.backends.sqlite3',
    'NAME': 'mydatabase',
  }
}

下面是mysql的配置方法:

DATABASES = {
  'default': {
    'ENGINE': 'django.db.backends.mysql',
    'NAME': 'mydatabase',
    'USER': 'mydatabaseuser',
    'PASSWORD': 'mypassword',
    'HOST': '127.0.0.1',
    'PORT': '3306',
  }
}

下面解释一下,里面参数的意思:

ENGINE : 指定数据库驱动,不同的数据库这个字段不同,下面是常见的集中数据库的ENGINE的写法:

django.db.backends.postgresql # PostgreSQL
django.db.backends.mysql    # mysql
django.db.backends.sqlite3   # sqlite
django.db.backends.oracle   # oracle
  • NAME: 指定的数据库名,如果是sqlite的话,就需要填数据库文件的绝对位置
  • USER: 数据库登录的用户名,mysql一般都是root
  • PASSWORD:登录数据库的密码,必须是USER用户所对应的密码
  • HOST: 由于一般的数据库都是C/S结构的,所以得指定数据库服务器的位置,我们一般数据库服务器和客户端都是在一台主机上面,所以一般默认都填127.0.0.1
  • PORT:数据库服务器端口,mysql默认为3306
  • HOST和PORT都可以不填,使用默认的配置,但是如果你有更改默认配置的话,就需要填入更改后的

配置完这,只是最简单的一步,下面就需要装python连接mysql数据库的驱动程序,首先,需要安装mysql的开发包,在shell,里面运行:

rpm -qa | grep mysql-devel

如果没有安装,那就安装把:

sudo yum install mysql-devel
#python2.7:
sudo pip install MySQLdb
#python3.4:
sudo pip install PyMySQL

安装好后,启动django

python manager.py runserver

如果没有出现报错,则表明配置正常,然后在新的shell运行:

python manager.py shell

输入以下命令:

from django.db import connection
cursor = connection.cursor()

如果没有报错,则就表明安装成功,你可以尽情使用django的数据库功能了

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

python实现自动发送报警监控邮件

本文实例为大家分享了python自动发送报警监控邮件 的具体代码,供大家参考,具体内容如下 因为有一些日常任务需要每日检查日否执行正确,所以需要一个报警监控的机制,这个需要你指定你发送的...

python生成指定长度的随机数密码

复制代码 代码如下:#!/usr/bin/env python# -*- coding:utf-8 -*- #导入random和string模块import random, string...

pyhanlp安装介绍和简单应用

pyhanlp安装介绍和简单应用

1. 前言 中文分词≠自然语言处理! Hanlp HanLP是由一系列模型与算法组成的Java工具包,目标是普及自然语言处理在生产环境中的应用。HanLP具备功能完善、性能高效、架构清...

Python Xml文件添加字节属性的方法

实例如下所示: from xml.etree.cElementTree import ElementTree,Element import xlrd import re def re...

浅谈pyqt5在QMainWindow中布局的问题

引言: 在pyqt5中使用了父类为QMainWindow的话,在里面使用布局类,QGridLayout, QHBoxLayout ,QVBoxLayout 时,发现不好用。 解决: 如果...