将 mysql workbench 连接到 GCE mysql

Connect mysql workbench to GCE mysql

已经两天了,我已经放弃了。我无法使用 workbench.

连接到我的 google 计算引擎 运行 mysql

我已经按照许多 Whosebug 链接上的说明进行操作,但都无济于事。查看以下所有状态。

下面是通过ssh浏览器在GCE上执行的window。

lunchbusters_za@lamp-inst:~$ cat /etc/mysql/mysql.conf.d/mysqld.cnf | grep bind

绑定地址 = 0.0.0.0

请注意,我还在 bind-address 上面注释掉了。

lunchbusters_za@lamp-inst:~$ netstat -an | grep 3306

tcp 0 0 0.0.0.0:3306 0.0.0.0:* 听

lunchbusters_za@lamp-inst:~$ sudo ufw status

状态:无效

防火墙甚至没有启用,但我已经允许 3306/tcp 了。

下面是我用的用户,可以连接。我将密码设置为 NO 只是为了排除这种情况。

lunchbusters_za@lamp-inst:~$ mysql -u admin

欢迎使用 MySQL 监视器。命令以 ; 结尾或\g。 您的 MySQL 连接 ID 是 11 服务器版本:5.7.25-0ubuntu0.18.10.2 (Ubuntu)

版权所有 (c) 2000、2019,Oracle and/or 其附属公司。保留所有权利。

Oracle 是 Oracle Corporation 的注册商标 and/or 分支机构。其他名称可能是其各自的商标 所有者。

键入 'help;' 或“\h”寻求帮助。输入'\c'清除当前输入的语句。

mysql>

现在我想在我的 Macbook 上使用 workbench 即 运行 来连接到 GCE:

我从我的 VM 的 Google 云平台仪表板获取外部 IP,并尝试使用 workbench 进行连接。

我不在可以阻止任何东西的私人网络上,我连接到我的私人 wifi 调制解调器。

我还可以从我尝试连接的 macbook ping 外部 IP。我也可以从本地网络浏览器访问 phpmyadmin。

您可以使用 SSH 隧道连接:

gcloud compute ssh --zone us-west1-a INSTANCE_NAME -- -N -p 3306 -D localhost:3306

但让我尝试在没有解决方法的情况下帮助您。

所以我们需要按照以下步骤操作:

  • 步骤 1 - 检查防火墙规则 - 在 https://console.cloud.google.com/networking/firewalls/ 检查您是否有 tcp:3306 或包含 3306[=46] 的 tcp 范围的规则=].

  • 步骤 2 - 检查与 端口 3306 的本地连接 - 在你拥有的同一个 gce 实例中 mysql 运行 在端口 3306 (telnet ip-machine 3306).

  • 中使用 telnet 测试连接
  • 步骤 3 - 检查与 mysql 的本地连接 - 来自您拥有的同一实例 mysql 运行连接 mysql.

  • 步骤 4 - GCP 网络内的连接 - 从同一 GCP 项目中的另一个 GCE 实例执行前面的步骤。

  • 步骤 5 - GCP 外部的连接端口 3306 - 从您的计算机执行步骤 2