Files
happy-life-star/backend/数据库脚本版本说明.md
T

4.5 KiB

数据库脚本版本说明

📋 当前可用脚本

🔧 开发版本(当前使用)

  • 文件名: mysql_emotion_museum_final.sql
  • 版本: v3.0 Final - 开发版本
  • 特性: DROP & CREATE 模式
  • 关联策略: 无外键约束,代码层维护关联
  • 适用: 开发环境

⚠️ 开发版本特点

  • 先删除后创建: 每次执行都会删除所有现有表
  • 数据丢失: 会清空所有现有数据
  • 表结构最新: 确保表结构始终是最新版本
  • 快速迭代: 适合频繁调整表结构的开发阶段

🚀 使用场景

  • 本地开发环境
  • 测试环境
  • 表结构调整频繁的开发阶段
  • 生产环境(会丢失数据)

🔄 脚本执行流程

开发版本执行流程

  1. 设置环境: 配置SQL模式和字符集
  2. 禁用外键检查: 便于删除表
  3. 创建数据库: 如果不存在则创建
  4. 删除现有表: 按依赖关系顺序删除所有表
  5. 创建新表: 重新创建所有15个表
  6. 创建索引: 创建所有131个优化索引
  7. 重新启用外键检查: 恢复外键约束
  8. 提交事务: 确保原子性操作

📊 表结构信息

创建的表 (15个)

  1. user - 用户表
  2. conversation - 对话表
  3. message - 消息表
  4. coze_api_call - Coze API调用表
  5. emotion_analysis - 情绪分析表
  6. emotion_record - 情绪记录表
  7. growth_topic - 成长课题表
  8. topic_interaction - 课题互动表
  9. location_pin - 地点标记表
  10. community_post - 社区帖子表
  11. comment - 评论表
  12. achievement - 成就表
  13. reward - 奖励表
  14. guest_user - 访客用户表
  15. user_stats - 用户统计表

索引统计

  • 总索引数: 131个
  • 单列索引: 主要字段的查询优化
  • 复合索引: 多字段组合查询优化
  • 唯一索引: 通过表定义的UNIQUE约束自动创建

🛠️ 使用方法

执行命令

# 进入backend目录
cd backend

# 执行开发版本脚本
mysql -u root -p < mysql_emotion_museum_final.sql

执行前检查

  • 确认是开发环境
  • 备份重要数据(如有)
  • 确认MySQL版本 8.0+
  • 确认用户权限充足

⚠️ 重要提醒

数据安全

  • 开发版本会删除所有数据
  • 每次执行都是全新开始
  • 不适合有重要数据的环境

版本选择建议

  • 开发阶段: 使用当前开发版本
  • 测试阶段: 可以使用开发版本
  • 生产部署: 需要创建生产安全版本

🔮 未来计划

生产版本特性(待开发)

  • 使用 CREATE TABLE IF NOT EXISTS
  • 保护现有数据不被删除
  • 支持增量更新和迁移
  • 包含数据迁移脚本

版本管理

  • 开发版本: 快速迭代,数据重置
  • 生产版本: 安全升级,数据保护
  • 迁移脚本: 版本间数据迁移

📞 技术支持

常见问题

  1. 执行失败: 检查MySQL权限和版本
  2. 数据丢失: 开发版本的正常行为
  3. 表结构错误: 重新执行脚本即可修复

联系方式

  • 查看执行日志排查问题
  • 确认环境配置是否正确
  • 验证MySQL服务状态

📝 版本更新记录

v3.1 (2025-07-13) - conversation表字段完善

🔧 重要更新:修复AI模块数据库字段不匹配问题

新增字段

  • user_type VARCHAR(20) - 用户类型 (registered/guest)
  • emotion_trend VARCHAR(50) - 情绪趋势
  • keywords JSON - 关键词
  • ai_insights TEXT - AI洞察
  • confidence DECIMAL(3,2) - 分析置信度
  • client_ip VARCHAR(45) - 客户端IP地址 (支持IPv6)
  • user_agent TEXT - 用户代理信息
  • summary TEXT - 对话摘要
  • tags JSON - 标签

新增索引

  • idx_conversation_user_type - 用户类型索引
  • idx_conversation_emotion_trend - 情绪趋势索引
  • idx_conversation_confidence - 分析置信度索引
  • idx_conversation_client_ip - 客户端IP索引

解决问题

  • 修复AI服务启动时的 Unknown column 'user_type' 错误
  • 确保Java实体类与数据库表结构完全匹配
  • 支持访客用户和注册用户的区分管理
  • 增强对话数据的分析和统计能力

v3.0 (2025-07-12) - 初始开发版本

  • 创建15个核心数据表
  • 实现雪花算法主键策略
  • 添加131个优化索引
  • 支持完整的情绪博物馆功能模块

更新时间: 2025-07-13 当前版本: v3.1 - conversation表字段完善版本 状态: 开发中 🚧