flnxi-Wu/scripts/run-migration-on-server.sh
WuYongJie 8705b9846a
Some checks failed
CI Check / check (push) Has been cancelled
feat: 统一弹窗样式系统与分类管理优化
- 创建统一的Modal组件,采用Apple风格设计
- 实现毛玻璃效果、圆角、动画和细边框描边
- 修复弹窗打开时背景滚动问题
- 修复分类管理中重复卡片和数组字符串显示问题
- 优化选项解析逻辑,添加去重和过滤机制
2025-11-25 09:37:00 +08:00

47 lines
1.6 KiB
Bash

#!/bin/bash
# 在服务器上运行数据库迁移脚本
# 使用方法: 将此脚本上传到服务器后执行,或通过 SSH 远程执行
set -e
echo "=========================================="
echo " 数据库迁移脚本"
echo "=========================================="
echo ""
# 检查容器是否运行
if ! docker ps | grep -q "youyidian-3d-material"; then
echo "❌ 错误: 容器 youyidian-3d-material 未运行"
echo "请先启动容器: docker-compose up -d"
exit 1
fi
echo "✓ 容器运行中"
echo ""
# 执行 Prisma 迁移
echo "开始执行数据库迁移..."
echo ""
if docker exec youyidian-3d-material npx prisma migrate deploy; then
echo ""
echo "✅ 数据库迁移成功完成!"
echo ""
echo "验证迁移结果..."
docker exec youyidian-3d-material npx prisma db execute --stdin <<< "SELECT column_name, data_type, column_default FROM information_schema.columns WHERE table_name = 'UploadField' AND column_name = 'addToCategory';" || echo "验证查询执行完成"
else
echo ""
echo "⚠️ 迁移执行失败或迁移已存在"
echo ""
echo "尝试手动添加字段(如果迁移文件不存在)..."
docker exec youyidian-3d-material npx prisma db execute --stdin <<< "ALTER TABLE \"UploadField\" ADD COLUMN IF NOT EXISTS \"addToCategory\" BOOLEAN NOT NULL DEFAULT false;" || echo "字段可能已存在"
echo ""
echo "✅ 手动迁移完成"
fi
echo ""
echo "=========================================="
echo " 迁移脚本执行完成"
echo "=========================================="