欢迎来到NiceSpace!祝大家开心每一天!
  • django
  • python
  • mysql
Django本地配置mysql(windows系统)

一、本地安装MySql数据库存储引擎


首先需要在本机安装mysql 下载地址:https://dev.mysql.com/downloads/mysql/

根据自己本机的操作系统下载对应版本。

下面是我的安装步骤以及遇到的问题:

我下载的是mysql-5.7.18-winx64,将其解压到C盘根目录,路径:C:\mysql-5.7.18-winx64

将C:\mysql-5.7.18-winx64\bin 设置成环境变量,dos下进入C:\mysql-5.7.18-winx64\bin目录,执行 mysqld -install(这里我遇到了

缺少msvcr120.dll,大概是因为自己本机没有安装vs的原因,然后自己安装了个vs2013,该问题解决); 之后输入 mysqld --initialize 会

自动在C:\mysql-5.7.18-winx64目录下创建data文件夹

初始化root密码:

1.确保已经停止mysql服务,在dos下输入 net stop mysql
2.dos下输入 mysqld --skip-grant-tables  (该命令模式下可以不需要密码链接数据库),之后DOS会卡死,不管他
3.另开一个dos,进入C:\mysql-5.7.18-winx64\bin,输入 mysql -u root 进入mysql数据库
4.依次输入:
use mysql
update user set authentication_string=password("123456") where user="root";(注意该处的分号)(将root密码设置为123456)
flush privileges;(注意该处分号)
exit

---------------mysql数据库引擎暂时做这些-----------------
 

二、为Django安装 mysql db api驱动—— MySQL-python


安装MySQL-python方式很多:

1.DOS下输入 pip install MySQL-python (注意大小写要一致) 
2.在 https://pypi.python.org/pypi/MySQL-python/ 下下载MySQL-python的压缩包 解压到本地MySQL-python-1.2.5,进入到MySQL-python-1.2.5下,输入 python setup.py install

以上两个步骤我都试过,最后都报了同一个问题 :Microsoft Visual C++ 9.0 is required < Unable to find vcvarsall.bat

这个需要安装vs2008 我刚装完个vs2013 不想装了 网上有说安装Microsoft Visual C++ Compiler for Python 2.7 路径:http://www.microsoft.com/en-us/download/details.aspx?id=44266解决的,我试了下,不报这个错了,但是还是有问题,cl编译状态有问题。

最后一个方式可以避开:

3: https://pypi.python.org/pypi/MySQL-python/ 下 直接下载MySQL-python-1.2.5.win32-py2.7.exe 这个不用编译可以直接安装 安装后OK了

-----------------MySQL-python--------------------------

装好后在django我们自己创建的app下配置setting.py

DATABASES = {
    'default': {
        'ENGINE': 'django.db.backends.mysql',
        'NAME': 'blogdata',
        'USER': 'root',
        'PASSWORD': '123456',
        'HOST': '',
        'PORT': '',
    }
}

ENGINE:存储引擎 mysql
NAME:数据库名(这个地方开始有点不理解,这个是你的应用需要操作的数据库,之前安装了mysql引擎,但是还没有创建任何数据库,所以等下还需要创建个数据库)
USER:安装sql引擎时的用户名 应该是root
PASSWORD: root用户的密码
HOST和PORT为空就好了

user和password是用来Django链接数据库用的用户和密码

之后按照正常的Django创建模型,修改models.py,创建好自己的模型后,打开cmd 进入到你的项目路径下 执行 python manage.py

makemigrations 为模型创建迁移文件 (在这里遇到了 mysql error You must reset your password using ALTER USER statement

before executing this statement.

说我的密码过期了,在这里上网找到了重新更改mysql数据库引擎的root密码)

更改mysql 的root密码:

DOS下进入 C:\mysql-5.7.18-winx64\bin  输入 mysql -u root -p  会让你输入密码  输入 初始化设置的123456

之后:

1.SET PASSWORD = PASSWORD('123456'); (注意分号)
2.ALTER USER 'root'@'localhost' PASSWORD EXPIRE NEVER;(注意分号)
3.flush privileges;(注意分号)

之后在dos下在进入到你的Django 项目路径下 输入 python manage.py makemigrations 这回不报上面的错了,但是会说找不到 blogdata,就是上面说的我们还没有给这个应用创建一个mysql的数据库让他用来操作

创建一个数据库:

进入到C:\mysql-5.7.18-winx64\bin下  输入 mysql -u root -p

输入密码123456后

输入:create database blogdata default charset=utf8;(注意分号)

退出:exit

进入到Django项目目录 

python manage.py makemigrations 创建迁移文件 成功

python manage.py migrate 将models.py里的模型更新到blogdata数据库中 成功

查看我们更改的数据库

进入C:\mysql-5.7.18-winx64\bin 输入 mysql -u root -p 输入密码123456

输入:use blogdata

输入:show tables;(注意分号)

可以看到已经创建的数据表

输入: desc xxxxxxx;(注意分号,xxxx代表你想查看的数据表名)

会列出数据表中的内容。

以上差不多就是Django 配置MySQL的过程。

随机文章
3D图形学总结(十一)—深度缓存 将C/C++注册到LUA环境中使用 3D图形学总结(十)—纹理映射透视矫正 3D图形学总结(五)—屏幕坐标变换 3D图形学总结(十二)—纹理滤波
推荐文章