《Python连接Redis实战:从虚拟机搭建到功能测试全记录》
2026/8/9 7:48:16 网站建设 项目流程

前言

本项目以MySQL 8.0 DBA运维核心知识点为基础,结合硅基流动开源大模型API,构建一套电商订单库智能查询与性能调优系统。 系统可接收业务自然语言自动生成合规 MySQL查询语句,自动执行查询并输出结构化表格,依托大模型完 成订单数据业务解读,同时解析 SQL执行计划输出标准化索引优化方案,全程无需人工手写、分析SQL。 核心价值:无需专业 SQL开发能力即可完成业务数据查询,自动替代人工统计报表、手工分析执行计划等 重复性运维工作;深度融合 MySQL数据库运维能力与大模型自然语言解析能力,适配企业轻量化数据查 询、SQL性能优化、AI智能解读一体化落地场景。

一、项目说明

1.1 概述

项目共分为两个子项目,由Python和Redis两个部分组成。旨在复习巩固Python语言知识和Redis数据库使用,增加知识面与项目经历。

1.2 项目组织方式及时间

项目计划在一天内完成所有搭建、功能测试和问题总结。通过VMware 17虚拟机实现平台搭建,由个人独立完成。

二、项目背景知识

2.1 核心功能模块

在动手之前,梳理了需要实现的功能模块:

模块功能应用场景
连接管理__init__connect,支持密码/超时设置建立并检测连接状态
键操作过期时间、删除、存在性检查键的基础管理
Stringset_string/get_string用户昵称、计数器
Hashhset_hash/hgetall_hash用户信息等对象数据
Listlpush_list/lrange_list消息队列
Setsadd_set/smembers_set标签、去重集合
ZSetzadd_zset/zrange_zset排行榜

2.2 错误处理

  • 捕获RedisConnectionError(连接失败)和通用RedisError(操作错误),打印友好提示

  • 连接失败时redis_client设为None,避免后续操作报错

2.3 扩展场景

  • 缓存系统:字符串存储热点数据,设置过期时间自动失效

  • 用户在线状态:哈希存储登录信息,过期时间标记离线

  • 排行榜:有序集合存储分数,实时更新排名

  • 消息队列:列表的lpush/rpop实现生产者-消费者模型

三、软硬件环境清单

需要准备的:

四、任务清单

  • 4.1 项目环境搭建(虚拟机 + 关闭防火墙/SELinux)
  • 4.2 安装redis-server(源码编译)

  • 4.3 配置redis数据库(后台启动 + 远程连接)

  • 4.4 Python配置(新建项目 + 安装redis库)

  • 4.5 测试(连接测试 + 内容测试)

五、项目实施

5.1 环境搭建

安装虚拟机及系统过程略,直接从关键配置开始。

5.1.1 准备安装环境

关闭防火墙,禁用selinx和时间同步:

下载所需软件依赖

5.1.2.源码编译安装Python3.11.9

我的xftp 8 用不了 就直接用 SCP 命令传文件

确认文件存在后解压

编译配置

进入 Python 目录 cd Python-3.11.9 编译配置 ./configure --prefix=/usr/local/python3.11 --enable-shared 多核编译安装 make -j$(nproc) && make install 配置动态链接库 echo "/usr/local/python3.11/lib" > /etc/ld.so.conf.d/python311.conf

建立软连接

重启reboot后验证(-一定要是大写的V)

5.1.3.配置国内pip源及安装项目依赖

pip相关依赖

vim插入以下内容

[global]
index-url=http://mirrors.aliyun.com/pypi/simple/
[install]
trusted-host=mirrors.aliyun.com
python相关依赖
5.1.4.部署并初始化MySQL 8.0.45

直接使用了之前的mysql

创捷所要用的库/表并插入数据

5.2.获取API Key

5.2.1创建key

访问腾讯云官网,手机号注册并完成实名认证
登录后进入“API Key管理新建API密钥,填写密钥名称并保存
选一种模型
进入后创建

5.3.脚本开发阶段

5.3.1.新建目录及脚本

手动编写.env脚本

编写mysql_client脚本

编写prompts脚本

编写main脚本

六.测试

6.1.项目执行

6.2.生产SQL测试

6.2.1.测试用例
1.查询用户1001的所有订单,展示商品名称、支付金额和下单时间
2.查询2026-05-032026-05-06下单、单笔实付金额大于100元的全部订单,展示商品名称与支付金额
3.找出所有数码配件类商品(耳机/鼠标/保护壳/支架)中,单笔消费金额最高的订单
4.实付金额超过1500元的高价大件订单,按下单时间由新到旧排序,只展示前3
5.计算用户1004所有订单的平均单笔消费金额,同时列出该用户全部商品名称与对应价格

七. web可视化版本

7.1. Streamlit介绍

Streamlit是开源、纯Python Web开发库,核心定位:不用写HTML/CSS/JS,只用Python就能快速做交互式网页,专门面向数据分析师、后端、AI工程师,把本地脚本一键变成可视化Web面板。

7.2.部署流程

7.2.1.原则

已有业务文件:main.py mysql_client.py prompts.py .env文件不变

需要编写web_main.py入口文件即可

7.2.2.安装Python依赖

注意:必须给python3.11.9安装依赖

7.2.3.创建Streamlit可视化入口web_main.py

7.2.4.创建systemd后台常驻服务

启动服务

7.2.5. Windows网页访问测试

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询