将 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。
已经两天了,我已经放弃了。我无法使用 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。