Files
gangyan/数据库配置汇总.md

11 KiB
Raw Blame History

甘言AI对话系统 - 数据库及服务配置汇总

本文档汇总了项目所有数据库和服务的配置信息,方便新同事快速了解系统架构 更新时间2026-03-26


一、系统架构概览

┌─────────────────────────────────────────────────────────────────┐
│                        甘言AI对话系统                             │
├─────────────────────────────────────────────────────────────────┤
│  ┌──────────┐  ┌──────────┐  ┌──────────┐  ┌──────────────────┐ │
│  │  Vue前端  │  │ Java后端 │  │Python RAG│  │   向量模型API     │ │
│  │  :3000   │  │  :8099   │  │  :7861   │  │  :3000 (bge-m3)  │ │
│  └────┬─────┘  └────┬─────┘  └────┬─────┘  └──────────────────┘ │
│       └─────────────┴─────────────┘                              │
│                         │                                        │
│       ┌─────────────────┼─────────────────┐                     │
│       ▼                 ▼                 ▼                     │
│  ┌─────────┐      ┌─────────┐      ┌──────────┐                │
│  │  MySQL  │      │  Redis  │      │  Milvus  │                │
│  │ :33306  │      │ :6379   │      │ :19530   │                │
│  └─────────┘      └─────────┘      └────┬─────┘                │
│                                         │                       │
│                                    ┌────┴────┐                  │
│                                    │  MinIO  │                  │
│                                    │ :9002   │                  │
│                                    └─────────┘                  │
└─────────────────────────────────────────────────────────────────┘

二、数据库配置

1. MySQL (主数据库)

配置项 说明
部署方式 Docker Compose 本地容器部署
容器名称 mysql-server -
镜像 docker.1ms.run/mysql:8.4.4 MySQL 8.4.4
主机端口 33306 对外暴露端口
容器端口 3306 MySQL默认端口
数据库名 chat_LLM 主业务数据库
root密码 1234567890 生产环境请修改
root主机 % 允许任意IP连接
数据卷 ./mysql_bind 数据持久化目录
Compose文件 mysql/docker-compose.yml -

Java连接配置 (application-yj.yml):

url: jdbc:mysql://127.0.0.1:3306/chat_LLM?useUnicode=true&characterEncoding=utf8&...
username: root
password: "1234567890"

外部连接命令:

mysql -h 127.0.0.1 -P 33306 -u root -p
# 密码: 1234567890

2. Redis (缓存)

配置项 说明
部署方式 宿主机直接安装 非Docker部署
主机 127.0.0.1 本地连接
端口 6379 Redis默认端口
密码 无密码
数据库 0 默认数据库
超时 6000ms 连接超时

Java连接配置:

redis:
  host: 127.0.0.1
  port: 6379
  password: ""
  database: 0

测试连接:

redis-cli -h 127.0.0.1 -p 6379
> ping
PONG

3. Milvus (向量数据库)

配置项 说明
部署方式 Docker Compose 包含etcd、minio、standalone
容器名称 milvus-standalone 主服务
镜像 milvusdb/milvus:v2.6.4 Milvus 2.6.4
端口 19530 gRPC端口
监控端口 9091 健康检查端口
依赖服务 etcd + minio 元数据+对象存储
Compose文件 milvus/docker-compose.yml -

依赖组件:

  • etcd: 存储元数据 (端口 2379, 容器名: milvus-etcd)
  • minio: 对象存储 (端口 9000/9002, 容器名: milvus-minio)

Python连接配置:

from pymilvus import connections
connections.connect(host="127.0.0.1", port="19530")

4. MinIO (对象存储 - 独立部署)

配置项 说明
部署方式 Docker (Milvus自带) 与Milvus共用
容器名称 milvus-minio -
镜像 minio/minio:RELEASE.2024-12-18 -
API端口 9003 (映射到9000) S3 API端口
控制台端口 9002 (映射到9001) Web管理界面
Access Key minioadmin 默认账号
Secret Key minioadmin 默认密码

访问地址:


三、应用服务配置

1. Java后端服务 (Spring Boot)

配置项 说明
服务名称 chat_web_backend -
端口 8099 Tomcat端口
上下文路径 /chat_web_backend API前缀
完整URL http://localhost:8099/chat_web_backend -
活跃配置 yj spring.profiles.active=yj
主配置 application-yj.yml 本地开发配置
Jar包路径 chat_web_backend/target/ Maven打包输出

启动命令:

cd /opt/download/oss_files/gangyan-deploy/gangyan/chat_web_backend
java -jar target/chat_web_backend-1.0.jar --spring.profiles.active=yj

配置文件位置:

chat_web_backend/src/main/resources/
├── application.yml          # 公共配置
├── application-yj.yml       # 本地开发配置(在用)
├── application-prod.yml     # 生产环境配置
├── application-dev.yml      # 开发环境配置
└── application-test.yml     # 测试环境配置

2. Python RAG服务 (LangChain-Chat)

配置项 说明
服务类型 FastAPI + 多进程 LangChain-Chatchat
API端口 7861 主API服务
启动文件 startup.py -
Python版本 3.11 conda环境
Conda环境 langchain-chat -
主目录 /opt/download/oss_files/gangyan-deploy/gangyan/langchain-chat -

关键配置:

# configs/model_config.py
EMBEDDING_MODEL: "bge-m3-api"              # 嵌入模型
LLM_MODELS: ["deepseek-v3", ...]           # LLM模型列表
EMBEDDING_DEVICE: "cpu"                    # 嵌入设备
LLM_DEVICE: "cuda"                         # LLM设备

启动命令:

cd /opt/download/oss_files/gangyan-deploy/gangyan/langchain-chat
/opt/software/miniconda3/envs/langchain-chat/bin/python startup.py -a

向量模型API (外部服务):


3. Vue前端服务

配置项 说明
框架 Vue 3 + Vite -
端口 3000 开发服务器
构建输出 dist/ 生产包
源码路径 chat_web/ -

开发启动:

cd /opt/download/oss_files/gangyan-deploy/gangyan/chat_web
npm install
npm run dev

生产构建:

npm run build
# 输出到 dist/ 目录部署到Nginx

四、端口汇总表

服务 端口 类型 说明
Vue前端 3000 HTTP 开发服务器
Java后端 8099 HTTP Spring Boot服务
Python RAG 7861 HTTP FastAPI服务
MySQL 33306 TCP 数据库(映射)
Redis 6379 TCP 缓存服务
Milvus 19530 gRPC 向量数据库
Milvus监控 9091 HTTP 健康检查
MinIO API 9003 HTTP 对象存储API
MinIO控制台 9002 HTTP Web管理界面

五、关键配置文件路径

1. Docker Compose文件

/opt/download/oss_files/gangyan-deploy/gangyan/
├── mysql/docker-compose.yml          # MySQL 8.4.4
├── milvus/docker-compose.yml         # Milvus + etcd + minio

2. Java后端配置

/opt/download/oss_files/gangyan-deploy/gangyan/chat_web_backend/src/main/resources/
├── application.yml                   # 公共配置
├── application-yj.yml               # 当前在用配置
└── ...

3. Python RAG配置

/opt/download/oss_files/gangyan-deploy/gangyan/langchain-chat/
├── configs/
│   ├── model_config.py              # 模型配置
│   ├── server_config.py             # 服务配置
│   └── kb_config.py                 # 知识库配置
└── startup.py                        # 启动脚本

4. Vue前端配置

/opt/download/oss_files/gangyan-deploy/gangyan/chat_web/
├── vite.config.js                    # Vite配置
├── package.json                      # 依赖配置
└── .env                              # 环境变量

六、常用操作命令

启动所有服务

cd /opt/download/oss_files/gangyan-deploy/gangyan

# 1. 启动基础服务
docker-compose -f mysql/docker-compose.yml up -d
docker-compose -f milvus/docker-compose.yml up -d

# 2. 启动Java后端
nohup java -jar chat_web_backend/target/chat_web_backend-1.0.jar \
  --spring.profiles.active=yj > /tmp/java-server.log 2>&1 &

# 3. 启动Python RAG
cd langchain-chat
nohup /opt/software/miniconda3/envs/langchain-chat/bin/python \
  startup.py -a > /tmp/langchain-chat.log 2>&1 &

# 4. 启动Vue前端开发
cd chat_web
npm run dev

检查服务状态

# 查看端口监听
netstat -tlnp | grep -E "8099|7861|33306|6379|19530"

# 查看Docker容器
docker ps

# 查看Java进程
ps aux | grep java

# 查看Python进程
ps aux | grep "startup.py"

重启服务

# 重启MySQL
docker restart mysql-server

# 重启Milvus
docker restart milvus-standalone milvus-etcd milvus-minio

# 重启Java
pkill -f "chat_web_backend"
nohup java -jar chat_web_backend/target/chat_web_backend-1.0.jar \
  --spring.profiles.active=yj > /tmp/java-server.log 2>&1 &

# 重启Python RAG
pkill -f "startup.py"
cd langchain-chat
nohup /opt/software/miniconda3/envs/langchain-chat/bin/python \
  startup.py -a > /tmp/langchain-chat.log 2>&1 &

七、注意事项

  1. MySQL端口: 对外暴露为 33306但Java配置中使用的是 3306说明Java和MySQL在同一台机器上或使用了端口转发

  2. Redis无密码: 当前配置未设置Redis密码生产环境建议配置密码

  3. Milvus依赖: 启动Milvus前必须确保etcd和minio已启动

  4. 向量模型: bge-m3通过外部API调用 (10.102.24.75:3000),非本地部署

  5. 数据备份:

    • MySQL数据在 mysql/mysql_bind/ 目录
    • Milvus数据在 milvus/volumes/ 目录

八、联系信息

如有问题,请联系:

  • 项目路径: /opt/download/oss_files/gangyan-deploy/gangyan/
  • 部署文档: 见项目README.md