上一章已经更新和安装了基于Ubuntu20.04 server系统默认的Python。并且也创建了python的虚拟环境。附上上一章的连接。
Django生产环境部署——Python安装与虚拟环境的创建(二)
本章主要是基于Ubuntu20安装mysql-server、Nginx和虚拟环境下安装uwsgi。
首先,打开Tabby连接上虚拟机的主机,由于虚拟机我并没有设置为静态ip,所以先在虚拟机主机上登入进去,输入ip addr 命令查看ip地址,之后利用tabby进行远程登入(同一局域网下)。附上ubuntu20.04配置静态ip的方法,以下两篇文章讲的比较详细
Ubuntu20.04配置静态ip
Ubuntu20.04配置静态ip
一、安装Mysql-Server
使用 su root 进入超管权限
1. 安装mysql-server
apt install mysql-server
2. 查看服务状态
systemctl status mysql
出现activate 说明启动成功
3. 设置root密码
#命令输入,进入数据库
mysql
#设置root密码,by后面为root管理的数据库密码
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password by 'kql123456';
4. 删除缺省的匿名用户和test库,禁止远程root登入
exit 退出数据库,进入命令行。
输入
mysql_secure_installation
系统显示:意思是是否修改root密码,输入no即可
再次显示如下,意思是是否删除匿名用户anonymous,MySQL安装后有个缺省的匿名用户 anonymous, 方便测试, 通常会带来安全隐患,输入yes并回车,删除anonymous用户。
再次显示如下,意思是是否允许远程root登入,一般在生产环境中默认禁止远程使用root登入,输入yes即可。
再次显示如下,意思是:是否删除test库,mysql安装好之后,会默认创建一个test库,方便测试用,如果不需要的话直接输入yes删除即可。
再次显示如下,意思是:前面的配置是否立即生效,输入yes即可
出现All Done说明配置成功!
5. 终端进入mysql
终端输入以下命令,输入root的密码,进入数据库。
能成功进入说明mysql安装配置成功!输入exit退出即可。
mysql -u root -p
**
6. 允许客户端非本机访问
**
修改mysql所绑定的网络接口
执行
vi /etc/mysql/mysql.conf.d/mysqld.cnf
将
bind-address = 127.0.0.1
改为:
bind-address = 0.0.0.0
重启mysql
systemctl restart mysql.service
7. 打开防火墙对应的端口
**
ubuntu20默认的防火墙是关闭状态,不需要次操作,但是,如果mysql所在的ubuntu开启了防火墙就需要打开对应的端口。
ufw allow 3306
**
8. 添加数据库用户
**
上面mysql只有一个root用户。即超级管理员,用户所有数据库系统的所有权限,但是使用客户端访问数据库时,尽量不要使用root直接访问数据库,建议创建一个普通用户来访问,并赋予这个普通用户的相应的权限。
1. 创建数据库用户
终端输入 mysql -u root -p 进入数据库。
创建user用户,密码为w123456*
CREATE USER 'user'@'localhost' IDENTIFIED BY 'w123456*';
CREATE USER 'user'@'%' IDENTIFIED BY 'w123456*';
@符号后面的 ‘localhost’ 表示该用户可以从localhost或者127.0.0.1地址连接访问数据库,也就是从本机访问数据库
@符号后面的 ‘%’ 表示该用户可以从其它IP地址连接访问数据库。
- 授予权限
之后输入如下命令:
GRANT ALL ON *.* TO 'user'@'localhost';
GRANT ALL ON *.* TO 'user'@'%';
赋予user用户所有权限,就是可以 该系统上 访问所有数据库里面所有的表。
只想赋予 user用户,只能读取数据库mydb的表table1 的权限,可以这样写:
GRANT SELECT ON mydb.table1 TO 'user'@'localhost';
GRANT SELECT ON mydb.table1 TO 'user'@'%';
关于数据库的权限可以查看官方文档:mysql权限授予
修改用户的 密码,执行下面的 命令
SET PASSWORD FOR 'user'@'localhost' = '新密码';
SET PASSWORD FOR 'user'@'%' = '新密码';
输入exit退出数据库。
到此基于ubnutu20的mysql-server已安装配置完毕!
**
二、Nginx安装
**
Nginx是一款轻量级的Web 服务器/反向代理服务器及电子邮件(IMAP/POP3)代理服务器,并在一个BSD-like 协议下发行。其特点是占有内存少。
1. 下载与安装
命令行直接输入:
sudo apt-get install nginx
如果出现以下错误,说明镜像源出现错误,直接更换一下镜像源
1.1更换一下镜像源
先拷贝一份原始文件
cd /etc/apt/
cp sources.list sources.list_before
vi sources.list_before
#清空内容,添加阿里镜像源
阿里镜像网站点击下列链接,找到对应的20.04版本的直接粘贴进去就行
ubuntu更换阿里镜像源
保存退出!
apt-get update
等待更新完成,之后再次安装Nginx!
Nginx安装成功!
**
2. Nginx常用命令
**
#查看版本号
nginx -v
#启动nginx
service nginx start
#重启
service nginx restart
#重载
nginx -s reload
#停止nginx
nginx -s stop #直接停止
nginx -s quit #完成已经接收的连接请求后再退出
#查看nginx进程
ps -ef | grep nginx
nginx文件安装完成之后的文件位置:
/usr/sbin/nginx:主程序
/etc/nginx:存放配置文件
/usr/share/nginx:存放静态文件
/var/log/nginx:存放日志
**
三、uwsgi安装
**
1. 下载安装
**
**
- 首先进入自己创建的Python虚拟环境中去,我的是django。
workon django
#执行下面命令
apt-get install libpcre3 libpcre3-dev
#安装uwsgi
pip install uwsgi --no-cache-dir
**
2.uwsgi常用命令
**
#启动uwsgi,在django虚拟环境上启动
uwsgi --ini xxx.ini # xxx.ini 为自己创建的uwsgi配置文件
#停止uwsgi
pkill -f uwsgi -9
uwsgi --stop xxx.pid
最后启动项目时,先启动Nginx,在启动uwsgi服务。
好了,至此uwsgi已经安装成功!
下一章将对nginx与uwsgi的使用做出详细的说明!!!
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
文章由极客之音整理,本文链接:https://www.bmabk.com/index.php/post/98006.html