Python3和Django如何支持MySQL和MariaDB数据库
2016-09-11 10:18
881 查看
原文地址:http://www.server110.com/mariadb/201404/10020.html首先,Django@Python2.x 中默认的引擎为 django.db.backends.mysql 。但是在Python3中如果这样写的话,会发现 django.db.backends.mysql 依赖 MySQLdb[5] ,而 MySQLdb 又不兼容 Python3 于是要找一种新的方式来继续使用MySQL。首先据MySQL文档[3]说,自从MySQL Connector/Python 1.1.1 开始,引入了 mysql.connector.django ,可直接作为 Django 的数据库引擎使用,但是我试了1.1.2和1.1.3后发现,根本不是那么回事[4]。后来,发现了 PyMySQL[1] ,支持Python3 ,google后知道如何与 Django 结合使用[2],答案如下:首先,安装PyMySQLfor Windowsfor Fedora
pip-python3 install PyMySQL
然后,在 Django 站点的 __init__.py 文件中添加如下两行:
import pymysql
pymysql.install_as_MySQLdb()
最后是数据库的配置(在settings.py)
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.mysql', #数据库引擎
'NAME': 'test', #数据库名
'USER': 'root', #用户名
'PASSWORD': 'root', #密码
'HOST': '', #数据库主机,默认为localhost
'PORT': '', #数据库端口,MySQL默认为3306
'OPTIONS': {
'autocommit': True,
},
}
}
然后同步数据库:for Windowsfor FedoraOK, It works!
pip-python3 install PyMySQL
pip-python3 install PyMySQL |
import pymysql
pymysql.install_as_MySQLdb()
import pymysql pymysql.install_as_MySQLdb() |
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.mysql', #数据库引擎
'NAME': 'test', #数据库名
'USER': 'root', #用户名
'PASSWORD': 'root', #密码
'HOST': '', #数据库主机,默认为localhost
'PORT': '', #数据库端口,MySQL默认为3306
'OPTIONS': {
'autocommit': True,
},
}
}
DATABASES = { 'default': { 'ENGINE': 'django.db.backends.mysql', #数据库引擎 'NAME': 'test', #数据库名 'USER': 'root', #用户名 'PASSWORD': 'root', #密码 'HOST': '', #数据库主机,默认为localhost 'PORT': '', #数据库端口,MySQL默认为3306 'OPTIONS': { 'autocommit': True, }, }} |
相关文章推荐
- Django_Python3添加MySQL/MariaDB支持
- 如何在 Django 连接 MYSQL 数据库
- 如何在Linux VPS中保护MySQL与MariaDB数据库安全
- [数据库测试]强烈推荐一个python ODBC数据源插件,可支持Oracle,Db2,Mysql,Sql-server以及各种数据库版本,附例子和测试程序
- SAE: Python Django 如何 syncdb 到线上数据库
- (django问题)连接数据库mysql(python-mysql)
- 修改(python) mysql 数据库 使其可以支持插入中文
- 【Python】Python3.4 + Django1.7.2 如何连接MySQL
- 【Python】Django filter 如何支持 or 条件过滤?
- Pycharm+Django+Python+MySQL开发 后台管理数据库
- 使用 Python 和 Oracle 数据库实现高并发性 了解如何借助线程和并发性提升支持 Oracle 数据库的 Python 应用程序的吞吐量和响应性。
- [数据库测试]强烈推荐一个python ODBC数据源插件,可支持Oracle,Db2,Mysql,Sql-server以及各种数据库版本,附例子和测试程序
- Python3 + django 支持 MySQL
- python 如何操作mysql 数据库
- 如何在Django1.6结合Python3.3版本中使用MySql
- python3 基础模块(数据库文件模块dbm、shelve、pickle,django,mysql,ORM框架——SQLAlchemy)
- django 文件上传和菜单分级,mysql支持事务,F模块自增字段, python发送get,post请求
- python3使用django1.11不支持MYSQL-python的解决办法
- 如何在Django1.6结合Python3.4版本中使用MySql
- 如何在Django1.8 结合Python3.4版本中使用MySql