Files
railway_cloud/test_connection.sh
2026-01-20 00:39:46 +00:00

28 lines
839 B
Bash

#!/bin/bash
echo "=== Docker 网络诊断 ==="
echo ""
echo "1. Docker0 网桥 IP:"
ip addr show docker0 2>/dev/null | grep -oP '(?<=inet\s)\d+(\.\d+){3}' || echo "❌ docker0 不存在"
echo ""
echo "2. MySQL 监听状态:"
sudo netstat -tlnp | grep 3306 || echo "❌ MySQL 未运行或未监听 3306"
echo ""
echo "3. MySQL 用户权限:"
mysql -u root -p -e "SELECT user, host FROM mysql.user WHERE user='railway';" 2>/dev/null || echo "❌ 无法查询(需要 root 密码)"
echo ""
echo "4. 测试从容器连接 MySQL:"
DOCKER0_IP=$(ip addr show docker0 | grep -oP '(?<=inet\s)\d+(\.\d+){3}')
if [ ! -z "$DOCKER0_IP" ]; then
docker run --rm mysql:8.0 mysql -h $DOCKER0_IP -u railway -p'Railway01.' -e "SELECT 'OK' as status;" 2>&1
else
echo "❌ 无法获取 docker0 IP"
fi
echo ""
echo "=== 诊断完成 ==="