Django 1.8.5中使用MySQL
2015-10-17 09:17
639 查看
我是参考官方文档说明的:django关于mysql的说明。百度到的都是坑货,都说装什么MySQLdb的,然后装了又一大堆问题,找不到C的编译器之类的。所以说,官方文档才是正道!!!
mysql现有三种引擎:
MySQLdb(不支持Python 3)
mysqlclient(是MySQLdb的副本,专门支持Python 3.2以上的)
MySQL connector/Python
根据推荐,使用mysqlclient是最好的选择,所以我只想介绍mysqlclient,我的服务器配置为Ubuntu 15.04。
安装引擎(当然,你得先自己装好mysql,就一条命令的事):
下面是在Django中的配置:
假设你的项目名称为jacket,那么在jacket/jacket/settings.py中修改配置(注意为了保密,一般都不要把账号和密码直接放在settings中,还有就是要使用INNODB作为存储的引擎):
然后是建好数据库(因为django是用utf8的):
还要要注意设置这个:USE_TZ = False,其他注意事项详细请看原文档。
mysql现有三种引擎:
MySQLdb(不支持Python 3)
mysqlclient(是MySQLdb的副本,专门支持Python 3.2以上的)
MySQL connector/Python
根据推荐,使用mysqlclient是最好的选择,所以我只想介绍mysqlclient,我的服务器配置为Ubuntu 15.04。
安装引擎(当然,你得先自己装好mysql,就一条命令的事):
sudo apt-get install python3-dev sudo apt-get install python-dev libmysqlclient-dev
下面是在Django中的配置:
假设你的项目名称为jacket,那么在jacket/jacket/settings.py中修改配置(注意为了保密,一般都不要把账号和密码直接放在settings中,还有就是要使用INNODB作为存储的引擎):
# settings.py DATABASES = { 'default': { 'ENGINE': 'django.db.backends.mysql', 'OPTIONS': { 'read_default_file': '/path/to/my.cnf', 'init_command': 'SET storage_engine=INNODB', }, } } # my.cnf [client] database = NAME user = USER password = PASSWORD default-character-set = utf8
然后是建好数据库(因为django是用utf8的):
CREATE DATABASE <dbname> CHARACTER SET utf8;
还要要注意设置这个:USE_TZ = False,其他注意事项详细请看原文档。
相关文章推荐
- MySQL中的integer 数据类型
- MySQL存储过程
- mysql中int、bigint、smallint 和 tinyint的区别与长度
- mysql load data 导出、导入 csv
- source命令执行SQL脚本文件
- MySQL创建用户及权限控制
- MySQL管理数据表
- linux下mysql添加用户
- mysql procedure
- mysql触发器
- MySQL 备份和恢复策略
- mac下安装mysql(转载)
- mysql 修改编码 Linux/Mac/Unix/通用(杜绝修改后无法启动的情况!)
- MySQL数据的导出、导入(mysql内部命令:mysqldump、mysql)
- mysql数据行转列
- Linux下修改MySQL编码的方法
- MySQL Server 日志
- MySQL 安全事宜
- MySQL 备份与恢复