Commit 8d5a4b21 by yiling.shen

添加详细数据库诊断步骤,帮助排查门诊识别问题

parent 5bd5d592
Pipeline #3200 failed in 0 seconds
......@@ -35,18 +35,22 @@ deploy_to_production:
- ssh -p $SSH_PORT $SSH_USER@$SSH_HOST "/tmp/deploy_with_backup.sh"
- echo "Checking deployment status"
- ssh -p $SSH_PORT $SSH_USER@$SSH_HOST "cd customer-recall && docker compose ps"
- echo "Checking database connection"
- ssh -p $SSH_PORT $SSH_USER@$SSH_HOST "cd customer-recall && docker compose exec -T mysql mysql -u root -pcallback_system_2024 -e 'SHOW DATABASES;' 2>/dev/null || echo 'Database connection failed'"
- echo "Checking MySQL container logs"
- ssh -p $SSH_PORT $SSH_USER@$SSH_HOST "cd customer-recall && docker compose logs --tail=20 mysql"
- echo "Checking MySQL container environment"
- ssh -p $SSH_PORT $SSH_USER@$SSH_HOST "cd customer-recall && docker compose exec -T mysql env | grep -i mysql"
- echo "Checking patients table data"
- ssh -p $SSH_PORT $SSH_USER@$SSH_HOST "cd customer-recall && docker compose exec -T mysql mysql -u root -pcallback_system_2024 -e 'USE callback_system; SHOW TABLES;' 2>/dev/null || echo 'Patients table check failed'"
- echo "Checking clinic distribution in patients table"
- ssh -p $SSH_PORT $SSH_USER@$SSH_HOST "cd customer-recall && docker compose exec -T mysql mysql -u root -pcallback_system_2024 -e 'USE callback_system; SELECT clinic_name, COUNT(*) as count FROM patients GROUP BY clinic_name ORDER BY count DESC;' 2>/dev/null || echo 'Clinic distribution check failed'"
- echo "Checking clinic data"
- ssh -p $SSH_PORT $SSH_USER@$SSH_HOST "cd customer-recall && docker compose exec -T patient_callback_app python -c \"import sys; sys.path.append('.'); from database_manager import DatabaseManager; db = DatabaseManager(); print('Clinics:', db.get_all_clinics())\" 2>/dev/null || echo 'Clinic data check failed'"
- echo "=== 详细数据库诊断开始 ==="
- echo "1. 检查MySQL容器状态"
- ssh -p $SSH_PORT $SSH_USER@$SSH_HOST "cd customer-recall && docker compose ps mysql"
- echo "2. 检查MySQL容器日志"
- ssh -p $SSH_PORT $SSH_USER@$SSH_HOST "cd customer-recall && docker compose logs --tail=10 mysql"
- echo "3. 检查MySQL容器环境变量"
- ssh -p $SSH_PORT $SSH_USER@$SSH_HOST "cd customer-recall && docker compose exec -T mysql env | grep -i mysql || echo '无法获取MySQL环境变量'"
- echo "4. 尝试连接数据库(详细错误信息)"
- ssh -p $SSH_PORT $SSH_USER@$SSH_HOST "cd customer-recall && docker compose exec -T mysql mysql -u root -pcallback_system_2024 -e 'SHOW DATABASES;' 2>&1 || echo '数据库连接失败,错误代码: $?'"
- echo "5. 检查网络连接"
- ssh -p $SSH_PORT $SSH_USER@$SSH_HOST "cd customer-recall && docker compose exec -T mysql ping -c 1 localhost || echo '容器内网络连接失败'"
- echo "6. 检查MySQL进程"
- ssh -p $SSH_PORT $SSH_USER@$SSH_HOST "cd customer-recall && docker compose exec -T mysql ps aux | grep mysql || echo 'MySQL进程检查失败'"
- echo "7. 检查数据库文件"
- ssh -p $SSH_PORT $SSH_USER@$SSH_HOST "cd customer-recall && docker compose exec -T mysql ls -la /var/lib/mysql/ || echo '数据库文件检查失败'"
- echo "=== 详细数据库诊断结束 ==="
- echo "Checking clinic JSON files directly"
- ssh -p $SSH_PORT $SSH_USER@$SSH_HOST "cd customer-recall && ls -la 诊所患者json/ 2>/dev/null || echo '诊所患者json directory not found'"
- echo "Checking specific clinic files"
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment