Python开发环境安装与配置
一、准备工作:
1. 查看是否已经安装Python
CentOS 7 默认安装了python2.7.5 因为一些命令要用它比如yum 它使用的是python2.7.5
python -V
2. 查看Python可执行文件的位置
which python
3. 进入到 usr/bin/ 目录下,切换到该目录下执行 ll python* 命令查看
cd usr/bin/
ll python*
二、开始安装:
1. 下载安装包
https://www.python.org/ftp/python/3.9.5/Python-3.9.5.tgz
wget https://www.python.org/ftp/python/3.9.5/Python-3.9.5.tgz
复制
2. 解压文件
tar -zxvf Python-3.9.5.tgz
复制
3. 安装依赖包
yum install -y zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readline-devel tk-devel gcc make libffi-devel
复制
4. 进入Python文件夹目录
cd Python-3.9.5
复制
5.初始配置
./configure --prefix=/usr/local/python3
复制
6. 安装
make && make install
复制
7. 配置软连接
ln -s usr/local/python3/bin/python3.9 usr/bin/python3
ln -s usr/local/python3/bin/pip3 usr/bin/pip3
复制
8. 验证
python3 -V
pip3 -V
复制
升级pip(可选)
pip3 install --upgrade pip
复制
MySql的安装与配置
一、准备工作:
1. 下载安装包
https://dev.mysql.com/get/Downloads/MySQL-5.7/mysql-5.7.34-1.el7.x86_64.rpm-bundle.tar
复制
2. 检查系统是否安装过mysql
检查系统中有无安装过mysql
rpm -qa|grep mysql
复制
查询所有mysql 对应的文件夹,全部删除
whereis mysql
find -name mysql
复制
3. 卸载CentOS7系统自带mariadb
卸载系统自带的Mariadb
rpm -qa |grep mariadb |xargs yum remove -y
复制
删除etc目录下的my.cnf ,一定要删掉,等下再重新建
rm etc/my.cnf
复制
二、安装与配置
1. 上传安装包到/usr/local,并解压
tar -axvf mysql-5.7.34-1.el7.x86_64.rpm-bundle.tar
复制
2. 安装MySql的以下4个组件
rpm -ivh mysql-community-common-5.7.34-1.el7.x86_64.rpm
rpm -ivh mysql-community-libs-5.7.34-1.el7.x86_64.rpm
rpm -ivh mysql-community-client-5.7.34-1.el7.x86_64.rpm
rpm -ivh mysql-community-server-5.7.34-1.el7.x86_64.rpm
复制
安装 mysql-community-server 出错:
error: Failed dependencies:
/usr/bin/perl is needed by mysql-community-server-5.7.34-1.el7.x86_64
net-tools is needed by mysql-community-server-5.7.34-1.el7.x86_64
perl(Getopt::Long) is needed by mysql-community-server-5.7.34-1.el7.x86_64
perl(strict) is needed by mysql-community-server-5.7.34-1.el7.x86_64
复制
yum install -y net-tools
yum install perl -y
复制
3. 修改MySql配置(可选)
创建数据库存放的文件夹,并修改配置文件
mkdir data
mkdir data/mysql
vi etc/my.cnf
#此处只修改数据库路径
datadir=/data/mysql
复制
完成对 mysql 数据库的初始化和相关配置
chown -R mysql:mysql data
chmod -R 777 data
复制
4. 初始化数据库
mysqld --initialize (生成一个临时密码)
或
mysqld --initialize-insecure (空密码)
复制
用以下命令查看数据库的临时密码
cat /var/log/mysqld.log | grep password
复制
5. 启动mysql服务
systemctl start mysqld
复制
如果出错([ERROR] InnoDB: Operating system error number 13 in a file operation.),可以试试关闭selinux,并重启centos
vi /etc/sysconfig/selinux
SELINUX=disabled
复制
如果出错([ERROR] InnoDB: The innodb_system data file 'ibdata1' must be writable),重新设置data目录权限.
[ERROR] InnoDB: Plugin initialization aborted with error Generic error
[ERROR] Plugin 'InnoDB' init function returned error.
chmod -R 777 /data
复制
设置MySql开机自启:
systemctl enable mysqld
复制
停止MySql:
systemctl stop mysqld
复制
重启MySql:
systemctl restart mysqld
复制
查看MySql服务状态:
systemctl status mysqld
复制
6. 测试MySql安装是否成功
mysql -u root -p
复制
退出mysql:
mysql>exit
复制
7. 修改'root'@'localhost'密码
mysql>ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'f123456';
复制
8. MySql远程访问授权配置
mysql>GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'f123456' WITH GRANT OPTION;
mysql>flush privileges;
mysql>exit
复制
9. 防火墙配置3306端口允许外部访问
查询防火墙状态:
systemctl status firewalld
复制
开启防火墙mysql 3306端口的外部访问:
firewall-cmd --zone=public --add-port=3306/tcp --permanent
firewall-cmd --reload
firewall-cmd --list-all ##查看防火墙规则
复制
10. 降低mysql密码安全级别
如果出现以下错误:
ERROR 1819 (HY000): Your password does not satisfy the current policy requirements
mysql>set global validate_password_policy=0;
mysql>set global validate_password_length=6;
复制
如果不能修改(MySQL ERROR 1193 (HY000): Unknown system variable 'validate_password_policy'),说明未开启密码校验插件。
mysql>SHOW VARIABLES LIKE 'validate_password%';
mysql>select plugin_name, plugin_status from information_schema.plugins where plugin_name like 'validate%';
mysql>install plugin validate_password soname 'validate_password.so';
复制
项目发布
一、 导入mysql数据(项目代码见下面的附件)
导入数据库
上传bookinfo.sql至/data文件夹,并执行下面语句
mysql>source /data/bookinfo.sql;
复制
注:如果出现:Failed to open file '/data/bookinfo.sql;', error: 2,提升文件夹权限即可。
测试:
mysql> use bookinfo;
mysql> select count(1) from books;
复制
二、发布项目
1. 安装项目依赖的库
pip3 install flask
pip3 install pymysql
pip3 install pyecharts
pip3 install requests
复制
2. 上传webapp至/usr/local/webapp下
3. 调试app
进入网站目录,并执行app.py
cd /usr/local/webapp
python3 app.py
复制
4. 测试
本地测试
curl http://127.0.0.1:8088
复制
在客户端浏览器中访问http://192.168.200.100:8088,注意防火墙开通8088端口。
firewall-cmd --zone=public --add-port=8088/tcp --permanent
firewall-cmd --reload
复制
5. 后台运行
nohup python3 -u app.py > myweb.log 2>&1 &
复制
参数说明:
后台进程管理
查看nohub命令下运行的所有后台进程:
jobs
查看后台运行的所有进程:
ps -aux
查看后台运行的所有python 进程:
ps -aux |grep python3
或者
ps -ef | grep python3
删除进程(-9 是强制删除)
kill -9 [进程id]
附件:项目代码
链接:https://pan.baidu.com/s/12F75jLFpnsLtRWPBHdYeJg
提取码:8yi7