37 lines
1.0 KiB
Bash
37 lines
1.0 KiB
Bash
#!/bin/bash
|
|
|
|
echo "=== 修复 MySQL 监听配置 ==="
|
|
|
|
# 1. 备份配置文件
|
|
sudo cp /etc/mysql/mysql.conf.d/mysqld.cnf /etc/mysql/mysql.conf.d/mysqld.cnf.backup.$(date +%Y%m%d_%H%M%S)
|
|
echo "✅ 已备份配置文件"
|
|
|
|
# 2. 修改 bind-address
|
|
sudo sed -i 's/^bind-address.*127.0.0.1/bind-address = 0.0.0.0/' /etc/mysql/mysql.conf.d/mysqld.cnf
|
|
echo "✅ 已修改 bind-address"
|
|
|
|
# 3. 显示修改后的配置
|
|
echo ""
|
|
echo "修改后的配置:"
|
|
sudo grep "bind-address" /etc/mysql/mysql.conf.d/mysqld.cnf
|
|
echo ""
|
|
|
|
# 4. 重启 MySQL
|
|
echo "正在重启 MySQL..."
|
|
sudo systemctl restart mysql
|
|
sleep 2
|
|
|
|
# 5. 验证
|
|
echo ""
|
|
echo "验证 MySQL 监听状态:"
|
|
sudo netstat -tlnp | grep 3306
|
|
echo ""
|
|
|
|
# 6. 测试连接
|
|
DOCKER0_IP=$(ip addr show docker0 | grep -oP '(?<=inet\s)\d+(\.\d+){3}')
|
|
echo "测试从本机连接 MySQL (IP: $DOCKER0_IP):"
|
|
mysql -h $DOCKER0_IP -u railway -p'Railway01.' -e "SELECT 'Connection OK' as status, DATABASE() as current_db, VERSION() as version;" 2>&1
|
|
|
|
echo ""
|
|
echo "=== 修复完成 ==="
|