目录
一、Vmware新建win7虚拟机
二、组件/软件安装
2.1 安装python3
2.2 更新pip
2.3 安装pycharm
2.4 安装django
2.5 win安装mysql
三、配置数据库
3.1 安装sqlite客户端
3.2 db.sqlite3导出为myblog.sql
3.3 Heidisql连接本地sql
四、部署项目
4.1 安装模块
4.2 尝试运行
4.3 更新数据库数据
4.4 项目展示
五、各种报错解决
创建一台win7虚拟机(win10也可以,win10可以减少一些软件安装问题),注意镜像一定要选择Service Pack版本,否则安装python会遇到报错“Windows 7 Service Pack 1 and all applicable updates are required to install Python”
镜像下载地址:MSDN, 我告诉你 - 做一个安静的工具站
注意安装后需要有几个注意事项
1. 关闭防火墙
2. 安装OpenSSH
Openssh用于宿主机向虚拟机传输文件,虚拟机网络波动比较大,可能存在下载慢的情况。
Opsnsssh安装教程:Win10 离线安装Openssh_openssh-win64.zip-CSDN博客
注意教程中的开机自启动命令是错误的,应该是 sc config sshd start= auto ,注意=后面有空格
启动服务:net start 服务名
停止服务:net stop 服务名
将服务设为自动启动:sc config 服务名 start= auto
将服务设为手动启动:sc config 服务名 start= demand
#scp 宿主机文件路径 虚拟机用户名@虚拟机IP:虚拟机文件存放路径
#宿主机文件路径可以是相对地址或绝对地址,虚拟机文件存放路径必须是绝对路径
#scp命令中宿主机文件路径不能存在中文--建议在传输文件所在目录打开cmd,使用宿主机相对路径传输
>>scp myblog-master.zip [email protected]:C:\project
3. 打开远程服务(允许其它电脑远程控制本电脑)
4. 安装7z(其它解压软件也可以)
下载地址:7-Zip
5. 打开telnet功能
6. 安装微软运行库(安装mysql会用到)
选择普通网络下载,正常安装
微软常用运行库合集官方版-微软常用运行库合集正式版-PC下载网
以github上的python博客项目为例
GitHub - myminwang/myblog: Python+Django+MySQL 博客系统
下载地址:Download Python | Python.org
python3.6.5 (win7不要选太高版本,太高版本已经不支持win7了)
这个图片报错是因为我一开始选择了不带Service Pack的win7镜像导致的。
安装时注意选择将环境变量加入path,记得勾选,python路径最好也自定义,不带中文就行,但要记住,可以参考下我的安装路径C:\app\python365。
升级pip版本,自带pip版本6.x(这一步是个大坑),需要去下载一个python文件执行
复制内容,黏贴到txt文本,并改名为get-pip.py
cmd切换到该目录下,执行命令pip get-pip.py,会提示pip安装成功,pip -V查看版本
后续安装django会方便许多
注意不要win7不要下载最新版本pycharm,选择2019.2之前的版本,2019.2是最后支持win7的版本,否则会报错“无法定位程序输入点 CreateAppContainerProfile 于动态链接库USERENV.dll上 ”,此处我选择2018.3版本。
参考:无法定位程序输入点 CreateAppContainerProfile 于动态链接库USERENV.dll上_360社区
pycharm老版本下载地址:Other Versions - PyCharm
打开cmd,输入,pip一定要按照上面更新,否则会报错的,
pip install Django==2.0.7
>> python
>> import django
#没有报错表示django安装成功,此方法适用于检测各种python模块是否安装,报错说明没有安装成功
注意一定要先安装微软运行库合集,否则会报错“无法启动此程序,因为计算机中丢失MSVCR120.dll”
下载地址:MySQL :: Download MySQL Community Server (Archived Versions)
教程:window安装mysql5.7流程_windows mysql5.7的安装教程_luo_guibin的博客-CSDN博客
#初始化
mysqld --initialize-insecure --user=mysql
mysqld -install
#启动与停止服务
net start mysql
net stop mysql
#开机自启动
sc config mysql start= auto
#测试并更改密码
mysql -u root -p
SET PASSWORD=PASSWORD('lgblgblgb');
flush privileges;
如果cmd提示“mysql”不是内部或外部命令,请添加环境变量。
至此,python3.6.5+django2.0.7+mysql5.7 安装完成
windows中安装sqlite_windows 安装sqlite_蓝色格子的博客-CSDN博客
sqlite3导出sql教程:SQLite3 数据库: 将 数据库 或者 表 导出为SQL文件_打开sqlitestudiocli如何将数据库转换成sql文件-CSDN博客
导出后不需要更改sql文件,有些教程说要更改
cmd> sqlite3 db.sqlite3
sqlite> .output myblog.sql # 将 sqlite 标准输出重定向到myblog.sql 文件
sqlite> .dump myTableOne # 将表导出到标准输出
sqlite> .exit # 退出该sqlite 数据库
其他数据库可视化工具也可以,推荐Heidisql原因是软件是免费的,且在使用navicate导入报错了
Heidisql下载:HeidiSQL - MariaDB, MySQL, MSSQL, PostgreSQL and SQLite made easy
连接本地数据库,127.0.0.1,密码是安装mysql时设置的,新建名为myblog的数据库,导入myblog.sql文件
注意用管理员打开pycharm,方便cmd使用,打开项目目录
打开pycharm终端,requirements.txt 中有全部模块及版本号,批量安装模块
pip install -r requirements.txt
python manage.py runserver
通常来说会有多个模块没安装上,提示"No module named '*********'",需要手动安装
pip install ******
直到所有没有 No module 报错为止,终端会提示让你登录127.0.0.1:8000
此时你打开会出现以下画面,原因是没有更新数据
#更新数据
python manage.py makemigrations
python manage.py make
python manage.py runserver
5.1 navicate导入sql文件报错
corresponds to your MySQL server version for the right syntax to use near 'PRAGMA foreign_keys=OFF;