一,购买服务器
本文服务器选择为阿里云学生轻量级服务器
服务器镜像选择Ubuntu16.04,点击右上方的远程链接,Ubuntu系统自带一个python2,一个python3.5,我们需要下载一个python3.6并且绑定内置命令
二、下载python3.6及需要的包
1安装Python 3.6 ,分别运行
# wget https://www.python.org/ftp/python/3.6.2/Python-3.6.2.tar.xz
# tar -xvf Python-3.6.2.tar.xz
# cd Python-3.6.2
# ./configure
# make && make install
如果出现错误:can’t decompress data; zlib not available
说明缺少依赖:zlib,采用以下操作:
如果python3.6没有对应的pip,也采用以下操作:
(1)先安装系统相应的依赖库文件
sudo apt-get install zlibc zlib1g-dev
(2)到python安装目录下执行
sudo ./configure
(3)当安装完成后,使用它来验证主二进制文件的位置:
$ which python3
$ python3 -V
(4)编辑Modules/Setup文件
vim Modules/Setup
(5)找到下面这句,去掉注释
#zlib zlibmodule.c -I$(prefix)/include -L$(exec_prefix)/lib -lz
(6)重新编译安装:
sudo make && sudo make install
此时系统会为python3.6安装对应的pip,可能为pip3或pip3.6
(7)查看方法:
pip3 -V
or
pip3.6 -V
2—更新pip:
pip3.6 install --upgrade pip
3—更新软件列表:
pip3.6 install --update pip
4—若要使用OpenSSL库,需在第一步先安装:
$ sudo apt-get install openssl
$ sudo apt-get install libssl-dev
在1.(6) make命令结束之后控制台打开python3.6
python3
import ssl
若没有报错,则说明Openssl安装成功
否则重新编译
./configure --with-ssl
再
make && make install ....
三、下载django
pip3 insatll Django
运行django时出现错误:
ModuleNotFoundError: No module named '_sqlite3'
原因是因为安装python的时候没有找到sqlite3.so的库。
解决方法一:
yum install sqlite*
然后重新编译python或者重新安装python
方法二:
1 安装 sqlite-devel
yum install sqlite-devel
2 重新编译python
cd /usr/local/python3.6.4
./configure
make
make install
四、下载Mysql5.7
1.输入
sudo apt-get install mysql-server mysql-client
中间会提示你输入密码,一定要记住,如果没有输入密码的界面,代表安装失败
失败解决办法:
更新一下源就可以:
sudo apt-get update
安装完成后输入下面代码进行测试,如果出现mysql 的socket处于 listen 状态则表示安装成功。
sudo netstat -tap | grep mysql
2.查看3306端口是否开放
出现下图证明端口没开
3.修改访问权限
进入目录
cd /etc/mysql/mysql.conf.d/
目录下有个 mysqld.cnf
编辑文件
sudo vim mysqld.cnf
“By default we only accept connections from localhost”,这几句话的意思是说“在默认情况下我们只允许本地服务访问MySQL”,所以我们需要注释掉下方那条配置,直接在它前面加上一个井号即可:
修改完文件后记得保存。
4.开发root用户账户的访问权限
在第三步中,我们仅仅只是取消了本地访问限制,但是我们还是没有对账户权限进行设置。
重启MySQL服务,并进入MySQL控制台:
service mysql stop
service mysql start
mysql -h 127.0.0.1 -u root -p
切换到系统数据库“mysql”中:
use mysql;
查看该数据库中的所有表:
show tables;
我们要修改上图中的最后一张表“user”,看一下这张表有哪些字段:
desc user;
字段非常多,就不一一罗列了。我们要用到的只是“Host”和“User”两个字段而已:
select host,user from user;
在这张表里,我们看到root用户仅仅只能在本地访问MySQL服务,所以我们要把它修改为“%”,意思是无论在哪里root账户都能够访问数据库服务:
update user set host='%' where user='root';
注意,在真实的生产环境中,并不建议这么修改,因为安全风险太大。我建议根据实际情况将root用户的host项修改为某个指定的ip地址,或仍然保持localhost
最后一项设置,开放root账户所有权限:
grant all privileges on *.* to 'root'@'%' identified by '你的root账户密码';
使各种权限设置立即生效:
flush privileges;
设置完之后在本地连接一下,连接成功设置完成。