Linux下安装Python3的django并配置mysql作为django默认数据库(转载)
我的操作系统为centos6.5
1 首先选择django要使用什么数据库。django1.10默认数据库为sqlite3,本人想使用mysql数据库,但为了测试方便顺便要安装一下sqlite开发包。
yum install mysql mysql-devel
#为了测试方便,我们需要安装sqlite-devel包
yum install sqlite-devel
2 接下来需要安装Python了,因为Python3已经成为主流,所以接下来我们要安装Python3,到官网去下载Python3的新版本。本人下载的版本为python3.5.2
wget https://www.python.org/ftp/python/3.5.2/Python-3.5.2.tgz
3 解压并安装

# 解压tar包
tar xf Python-3.5.2.tgz
# 进入解压后的包
cd Python-3.5.2
# 配置安装信息,我的安装路径为/usr/install/python3/
./configure --prefix=/usr/install/python3/
# 编译并安装
make && make install

4 配置PATH环境变量
# 在/ect/profile.d/文件下新建一个文件python3.sh
vim /etc/profile.d/python3.sh
# 添加下面这句话
export PATH=$PATH:/usr/install/python3/bin/
#然后执行
export PATH=$PATH:/usr/install/python3/bin/
5 默认情况下安装完Python3.5.2已经安装了pip,但我想要安装较新版本的pip
# 下载pip安装程序
wget --no-check-certificate https://bootstrap.pypa.io/get-pip.py
# 安装pip
python3 get-pip.py
6 安装django
pip install Django
7 安装mysqlclient,mysqlclient是一个Python3与mysql的连接器。
pip install mysqlclient
至此,Python与django安装完成!
如何配置mysql为django默认数据库?
1 创建一个新的project
# 创建一个名为mysite的项目
django-admin startproject mysite
2 进入该project并修改settings配置文件

# 进入该project
cd mysite
# 修改settings配置文件
vim mysite/settings.py
# 找到 DATABASES 属性
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.mysql', # 将mysql作为django默认数据库
'NAME':'mysite', # 配置数据库名称
'USER':'root', # 数据库用户
'PASSWORD':'123456', # 用户密码
'HOST':'127.0.0.1', # 配置数据库服务所在地址,若为空则默认为localhost
'PORT':'3306', # 配置端口
}
}

3 django并不会为我们创建数据库,我们需要手动创建数据库。

# 启动数据库服务
service mysqld start
# 登录数据库并进入数据库命令行界面
mysql
# 创建一个名为mysite的数据库。settings文件配置中我们定义了数据库名称为mysite
mysql>CREATE DATABASE mysite CHARACTER SET=utf8;
# 退出数据库命令行界面
mysql> quit

4 在mysite项目中新建一个名为polls的app
[root@bogon mysite]# python3 manage.py startapp polls
5 修改polls/models.py文件

#
vim polls/models.py
# 修改如下: from django.db import models
# Create your models here.
class student(models.Model):
name=models.CharField(max_length=24)
school=models.CharField(choices=(('sc01','第一中学'),('sc02','第二中学'),('sc03','第三中学')),max_length=32)
sfid=models.IntegerField(primary_key=True,unique=True,)
phone=models.IntegerField(blank=True,null=True)
emial=models.EmailField(null=True,blank=True) def __str__(self):
return self.name

若想理解models.CharField()等方法,可以参考我的文章: django中的model field 。
6 配置settings文件中的INSTALLED_APPS属性

INSTALLED_APPS = [
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
'polls.apps.PollsConfig', # 添加该行
]

7 通知django,polls中的models文件已被修改。
python3 manage.py makemigrations poll
8 (本步骤可略过)如果我们想知道对polls/models.py所进行的修改映射到数据库中会如何操作,可使用如下命令:
python3 manage.py sqlmigrate polls 0001
9 将对models文件进行的修改映射到数据库中
python manage.py migrate
10 (本步骤可省略)如果想要在admi界面对自定义的模型进行增删查改,需要在对app下的admin.py文件进行修改。
from .models import student
# 对student模型进行登记
admin.site.register(student)
(此博客为转载)
Linux下安装Python3的django并配置mysql作为django默认数据库(转载)的更多相关文章
- Python3.x:Linux下安装python3.6
Python3.x:Linux下安装python3.6 下载 #先进入download文件夹 cd /home/download #输入命令(下载到当前目录) wget https://www.pyt ...
- Linux下安装Python3.3.0
Linux下安装Python3.3.0_路易_新浪博客 Linux下安装Python3.3.0 (2013-01-08 11:45:37)
- 【转】在Linux下安装python3
原文链接:http://www.cnblogs.com/feng18/p/5854912.html 1.linux下安装python3 a. 准备编译环境(环境如果不对的话,可能遇到各种问题,比如wg ...
- Java java jdk在Linux下安装与环境变量的配置
java jdk在Linux下安装与环境变量的配置 by:授客 QQ:1033553122 linux环境:CentOS-6.0-x86_64-bin-DVD1.iso [root@localhost ...
- Linux下安装Python3和django并配置mysql作为django默认服务器
我的操作系统为centos6.5 1 首先选择django要使用什么数据库.django1.10默认数据库为sqlite3,本人想使用mysql数据库,但为了测试方便顺便要安装一下sqlite开发包 ...
- linux下安装python3(转)
一.Linux下安装Python 二.Linux下Python安装完成后如何使用pip命令 三.Linux下Python安装完成后如何使用yum命令 四.Linux下安装Anaconda 五.Linu ...
- Linux下安装python3.3.2及configrue、make、make install
一.安装python3.3.2 raspberry的/usr/local/src目录没有权限,可执行如下命令 pi@raspberrypi:~$ sudo chmod -R 777 /usr/loca ...
- Linux下安装java的jdk和配置环境变量
每次感觉配这个超级简单 但是每次都要查下 记一下好了 Linux下安装jdk,步骤如下 1:下载jdk包:本章使用的为后缀为tar.gz的文件(不需要安装),如jdk-8u111-linux-x64. ...
- Linux下安装Python3.6.8并安装包
一.问题在Linux下面安装Python3.6.8,由于在Linux中的Python是2.7.x的版本因此,我们需要在Linux中新下载一个Python 二.解决1.python的安装(1)下载包利用 ...
随机推荐
- python修炼第五天
第五天,感觉开始烧脑了.递归逻辑难,模块数量多,但是绝世武功都是十年磨一剑出来的!稳住! 1 递归. 定义-----递归就是在函数的内部调用自己递归深度 998不建议修改递归深度,因为如果998都没有 ...
- 记录一次配置golang服务器端口
之前配置程序监听端口,地址都写成IP+:Port的格式,然而一直调试不同,也找不出问题. 后来,参考博客https://blog.csdn.net/yoie01/article/details/214 ...
- 关于xml的相关知识
1 xml定义和用途 定义:XML (eXtensible Markup Language)即可扩展标记语言,它与HTML一样,都是SGML(Standard Generalized Markup ...
- cocos2d-html5 碰撞检测的几种方法
游戏中的碰撞还是比较多的,比如角色与角色的碰撞,角色与墙壁的碰撞,角色与怪物的碰撞等,都需要进行碰撞的检测,来触发一定的事件 最近在尝试制作一个小游戏的时候需要用到碰撞检测,然后就查了下资料,并在论坛 ...
- ecplise包的层次结构选择
ecplise包的层次结构选择 平坦方式: 分层方式:
- jQuery 核心函数
$() ;/ jQuery () ; 就代表调用 jQuery 的核心函数. 1. 接收一个函数. $(function(){ alret('hello world'); }); 2. 接收一个字 ...
- java web的MVC框架,el表达式,servlet,jstl表达式
MVC全名是Model View Controller,是模型(model)-视图(view)-控制器(controller)的缩写,一种软件设计典范,用一种业务逻辑.数据.界面显示分离的方法组织代码 ...
- Spring Factory
BeanFactory和FactoryBean均为接口: BeanFactory为IOC容器的创建提供了一个最底层的规范,主要方法包括contains(bean), getBean(class, be ...
- Python第五章(北理国家精品课 嵩天等)
函数和代码复用 函数的定义和使用 def <函数名>(<参数(0个或多个)>): <函数体> return <返回值>可选参数放在不可选参数之后*b不定 ...
- node.js 之 N-blog
N-blog 使用 Express + MongoDB 搭建多人博客 原文地址: https://github.com/nswbmw/N-blog 建议初学者,研究下整个项目. 这里节选了一些内容为 ...