【问题标题】:GCE and Debian - Unable to connect to MYSQL from TOADGCE 和 Debian - 无法从 TOAD 连接到 MYSQL
【发布时间】:2015-06-03 17:04:15
【问题描述】:

在 Google Compute Engine 中,使用“点击部署”安装 LAMP。我还在 API 控制台中启用了 ALLOW HTTP、HTTPS 流量。

我无法通过 Toad 连接 MySQL。我尝试了以下连接类型 1.SSH、2.TCP、3.SSL。

参考这张图片:

.

我在通过这三种连接类型中的任何一种连接时遇到问题。如何通过 Toad 连接 MySQL(使用 GCE 创建)?

我也使用了 SSH 密钥,有什么特定的方法可以连接到这个通过 GCE 创建的 mySQL?

我的远程服务器my.cnf文件

【问题讨论】:

    标签: mysql ssh google-compute-engine


    【解决方案1】:

    如果您想使用 Toad 从远程 PC 连接到 Mysql:

    1) 在 Developer Console Compute Engine 网络页面中添加防火墙规则,以允许 tcp:3306(mysql 端口)连接到您的 IP 或所有人(0.0.0.0/0,更简单但不安全),然后使用 Toad TCP 连接.

    2) 检查 mysql 用户是否接受来自您的 IP 或每个 IP (%) 的连接,或者创建一个新的 mysql 用户。您可以在 SSH 中连接到实例并提供以下命令来创建新的 Mysql 用户:

    mysql -u root -p
    

    然后创建用户(根据您的需要更改“新用户”和“密码”):

    CREATE USER 'newuser'@'%' IDENTIFIED BY 'password';
    

    授予用户权限:

    GRANT ALL PRIVILEGES ON * . * TO 'newuser'@'%';
    
    FLUSH PRIVILEGES;
    
    exit;
    

    如果连接仍然失败:

    3) 检查 mysql 是否正在侦听所有 IP 地址,对于 Debian,请参见 /etc/mysql/my.cnf 并将绑定地址更改为:

    绑定地址 = 0.0.0.0

    然后重启mysql:

    /etc/init.d/mysql restart
    

    希望这会有所帮助。

    真诚地, 保罗

    【讨论】:

    • 我在 GCE 中创建了防火墙并允许 tcp:3306,现在我可以使用 TOAD 从我的远程电脑连接,感谢 Paolo P 和 chrispomeroy
    【解决方案2】:

    我尝试从同一网络和项目中的另一台服务器访问 mysql,以帮助缩小您的请求被阻止的位置。如果您可以从另一个实例访问 mysql,那么它可能是您的防火墙规则。

    另外,debian 是否默认启用了 iptables 或其他软件防火墙?

    【讨论】:

    • 感谢您的回复。对不起,我不知道防火墙。但我的 iptables 有以下信息。 $ sudo iptables -L Chain INPUT (policy ACCEPT) target prot opt source destination Chain FORWARD (policy ACCEPT) target prot opt source destination Chain OUTPUT (policy ACCEPT) target prot opt source destination
    猜你喜欢
    • 2019-06-11
    • 1970-01-01
    • 2018-11-18
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多