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

yipeiwu_com6年前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 @property装饰器原理解析

这篇文章主要介绍了Python @property装饰器原理解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下1.通过@property...

python re正则匹配网页中图片url地址的方法

python re正则匹配网页中图片url地址的方法

最近写了个python抓取必应搜索首页http://cn.bing.com/的背景图片并将此图片更换为我的电脑桌面的程序,在正则匹配图片url时遇到了匹配失败问题。 要抓取的图片地址如图...

python使用paramiko模块通过ssh2协议对交换机进行配置的方法

该代码用的是paramiko模块,python版本是python2.7 下面上源码 # -*- coding: utf-8 -*- import paramiko import t...

使用tensorboard可视化loss和acc的实例

1.用try...except...避免因版本不同出现导入错误问题 try: image_summary = tf.image_summary scalar_summary =...

详解python字节码

Python对不可变序列进行重复拼接操作效率会很低,因为每次都会生成一个新的对象,解释器需要把原来对象中的元素先复制到新的对象里,然后再追加新的元素。 但是CPython对字符串操作进行...