Django 连接Mysql的方法及常见问题
来源:互联网 发布:舒柏奇犬 知乎 编辑:程序博客网 时间:2024/05/16 00:26
Django默认使用sqlite3数据库,想要使用Mysql数据库需要修改settings文件中的默认配置。
Django的默认连接sqlite3配置:
DATABASES = { 'default': { 'ENGINE': 'django.db.backends.sqlite3', 'NAME': os.path.join(BASE_DIR, 'db.sqlite3'), }}
Django自带的有sqlite3数据库,使用sqlite3数据库不需要安装,使用时会直接生成一个数据文件
DATABASES = { 'default': { 'ENGINE': 'django.db.backends.mysql', 'NAME': 'science_crawler', 'USER':'root', 'PASSWORD':'root', '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 # oracleNAME: 指定的数据库名,如果是sqlite的话,就需要填数据库文件的绝对位置
USER: 数据库登录的用户名,mysql一般都是root
PASSWORD:登录数据库的密码,必须是USER用户所对应的密码
HOST: 由于一般的数据库都是C/S结构的,所以得指定数据库服务器的位置,我们一般数据库服务器和客户端都是在一台主机上面,所以一般默认都填127.0.0.1
PORT:数据库服务器端口,mysql默认为3306
HOST和PORT都可以不填,使用默认的配置,但是如果你有更改默认配置的话,就需要填入更改后的
数据库驱动:
Django连接mysql需要安装连接mysql的驱动,我安装的是pymysql,注意就算你的是python3要安装pymysql,而不是pymql3,pymql3是pymql的一个旧的分支。安装pymysql使用pip包管理工具安装即可。安装命令如下:
pip install pymysql使用测试:
进入使用Django创建的项目,使用如下命令运行应用:
python manage.py runserver
然后可以使用如下命令,进入Django提供的应用交互shell
python manage.py shell
在shell中输入如下代码:
from django.db import connection cursor = connection.cursor()
如果没有出现错误则表示连接成功。
ImportError: cannot import name 'Thing2Literal' 异常的解决方法:
该异常一般是由你安装mysql驱动程序是铺pymysql3而不是pymysql所导致的。一般而言分别使用如下命令卸载pymysql3,并安装pymysql就能解决
pip uninstall pymysql3pip install pymsql
0 0
- Django 连接Mysql的方法及常见问题
- 在Django中使用mysql时的常见问题及配置
- Django的事儿 --- 连接MySQL
- django连接mysql配置方法总结
- django连接mysql配置方法总结(转)
- 连接MYSQL数据库的方法及示例
- 连接MYSQL数据库的方法及示例
- 连接MYSQL数据库的方法及示例
- codeblock 配置 mysql 环境方法及常见问题
- python&django 常见问题及解决方法
- 关于jsp连接mysql的常见问题
- django 与mysql的连接配置
- Django与数据库MySQL连接的用法
- 关于django中mysql连接的几个问题
- [Django数据库模型]Django连接MySQL数据库的简单例子
- MySQL用户连接常见问题
- mysql远程连接 常见问题
- python-Django中连接MySQL数据库及设置用户名密码
- 文章标题
- 设计模式05:建造者模式
- display:table-cell的应用
- Selenium3 浅尝
- Easy-5
- Django 连接Mysql的方法及常见问题
- python乱码问题一览
- 欢迎使用CSDN-markdown编辑器
- 二叉树中序遍历非递归实现
- c++ 迭代器iterator 和 vector
- 重写BasicButtonUI的paintButtonPressed方法
- 单词记忆方法
- 《网络是怎样连接的》部分总结
- 大数据教程(一)—— Hadoop集群坏境搭建配置