Django1.7+python 2.78+pycharm配置mysql数据库

yipeiwu_com5年前Python基础

配置好virtualenv 和virtualenvwrapper后,使用pycharm创建新项目。之后要面临的问题就来了,之前一直使用的是sqlite作为开发数据库进行学习,按照之前看教程的原则,好像就是说开发环境要和生产环境尽量的一致,所以现在想尝试一下使用更有可能在生产环境部署的mysql数据库进行开发。

本觉得是一件应该很轻松的事情,没想到遇到了一些麻烦

根据一通百度,搜出来的方案大概有:

MySQLdb
mysql安装时候自带的connector
pymysql

MySQLdb 是django官方推荐的第一个是django官方推荐的数据库链接库,也自然是我第一个尝试的。可是安装的时候居然找不到适合64位,python2.78的安装文件! 通过一篇文章介绍修改勉强装上了支持2.7的版本,结果使用的时候总是unicode报错,mysql的数据库也按照教程说的设置成了utf8编码,只得作罢

2,自带的connector

又是一个看起来很官方的版本,但是按照官方的安装方法总是提示没有mysql.connector.django这个模块。。。。不明白为什么。再仔细找找发现安装成功的同学之后又碰到了中文unicode报错。。。。。残念

3,pymysql

这是博客上关于python3试用django-mysql的解决方案。一开始因为非官方没有使,倒是意外简单的成功了。。。

在project的inti.py里面添加:

import pymysql
pymysql.install_as_MySQLdb()
settings:

DATABASES = {
'default': {
'ENGINE': 'django.db.backends.mysql', #数据库引擎
'NAME': 'django', #数据库名
'USER': 'user', #用户名
'PASSWORD': 'password!', #密码
'HOST': 'localhost', #数据库主机,默认为localhost
'PORT': '3306', #数据库端口,MySQL默认为3306
'OPTIONS': {
'autocommit': True,
},
}
}

相关文章

python 抓包保存为pcap文件并解析的实例

首先是抓包,使用scapy模块, sniff()函数 在其中参数为本地文件路径时,操作为打开本地文件 若参数为BPF过滤规则和回调函数,则进行Sniff,回调函数用于对Sniff到的数据...

在Python中操作日期和时间之gmtime()方法的使用

 gmtime()方法转换历元到一struct_time以UTC其中dst的标志值始终为0以秒表示时间。如果不设置秒时或None,返回的时间为当前time()。 语法 以下是g...

python通过yield实现数组全排列的方法

本文实例讲述了python通过yield实现数组全排列的方法。分享给大家供大家参考。具体分析如下: 从n个不同元素中任取m(m≤n)个元素,按照一定的顺序排列起来,叫做从n个不同元素中取...

python 用所有标点符号分隔句子的示例

问题 给出一段话,由短句组成,短句之间可能被任意标点符号隔开。想要提取所有的短句。 解决 使用 re.split 函数,用正则式匹配的方法,一次性分隔所有短句。 import re...

通过Pandas读取大文件的实例

当数据文件过大时,由于计算机内存有限,需要对大文件进行分块读取: import pandas as pd f = open('E:/学习相关/Python/数据样例/用户侧数据/te...