README_CENTOS.md 2.4 KB

CentOS 7.9 部署说明

环境要求

  • CentOS 7.9
  • Python 3.8.3 或更高版本
  • pip (Python包管理器)

快速开始

方法一:使用部署脚本(推荐)

  1. 将以下文件上传到CentOS服务器:

    • test_db_connection.py
    • requirements.txt
    • deploy_centos.sh
  2. 赋予执行权限并运行:

    chmod +x deploy_centos.sh
    ./deploy_centos.sh
    

方法二:手动安装

  1. 检查Python版本:

    python3 --version
    

    确认版本为 3.8.3 或更高

  2. 安装依赖: ```bash

    如果pip未安装,先安装pip

    python3 -m ensurepip --upgrade

安装项目依赖

python3 -m pip install -r requirements.txt --user


3. 运行测试脚本:
```bash
python3 test_db_connection.py

如果系统没有Python 3.8.3

方式一:使用yum安装(如果可用)

sudo yum install python3 python3-pip

方式二:从源码编译安装Python 3.8.3

# 安装编译依赖
sudo yum groupinstall -y "Development Tools"
sudo yum install -y openssl-devel bzip2-devel libffi-devel zlib-devel readline-devel sqlite-devel

# 下载Python 3.8.3源码
cd /tmp
wget https://www.python.org/ftp/python/3.8.3/Python-3.8.3.tgz
tar xzf Python-3.8.3.tgz
cd Python-3.8.3

# 编译安装
./configure --enable-optimizations
make altinstall

# 验证安装
python3.8 --version

数据库配置

脚本会连接到以下数据库:

  • 主机: 127.0.0.1
  • 端口: 3306
  • 用户名: prod
  • 密码: hmdmxjIvfIjIoflL

故障排查

1. 连接超时

如果出现连接超时错误,请检查:

  • 网络连通性:ping 127.0.0.1
  • 端口是否开放:telnet 127.0.0.1 3306nc -zv 127.0.0.1 3306
  • 防火墙设置:确保3306端口未被阻止

2. 模块未找到错误

如果提示 ModuleNotFoundError: No module named 'pymysql'

python3 -m pip install pymysql==1.0.2 --user

3. 权限问题

如果使用 --user 标志安装仍然有问题,可以使用sudo(不推荐用于生产环境):

sudo python3 -m pip install -r requirements.txt

测试结果说明

  • 成功: 会显示数据库版本、当前数据库名称和连接ID
  • 失败: 会显示错误代码和详细错误信息

注意事项

  • 确保CentOS服务器能够访问数据库服务器(127.0.0.1,本地数据库)
  • 如果使用防火墙,需要开放相应端口
  • 生产环境建议使用虚拟环境(venv)来隔离依赖