我可以从 Windows MySQL Workbench 连接到 GCP CE VM 实例上的 MySQL 吗?

can I connect to MySQL on a GCP CE VM instance from Windows MySQL Workbench?

正如标题所暗示的,我希望从我的 windows 笔记本电脑连接到 GCP VM 实例,其中 mysql 是 运行。数据库工作正常,如果我从他们的云连接进入 ssh 客户端,我可以直接使用 mysql 客户端并查询数据库。

我想使用我的本地 windows MySQL Workbench 应用程序,并且能够执行查询,就像我在移植之前构建的本地主机版本中所做的那样到 GCP。

如何执行此操作(无需订阅 GCP Cloud SQL)并附加到我的 VM 实例的 sql?

////////////////////////////////////////// // 根据 John 的评论,这是我的净统计输出:

netstat -tlnp | grep 3306
tcp        0      0 127.0.0.1:3306          0.0.0.0:*               LISTEN      17007/mysqld    

3306确实在mysql的端口列表中:

mysql> SHOW GLOBAL VARIABLES LIKE 'PORT';
+---------------+-------+
| Variable_name | Value |
+---------------+-------+
| port          | 3306  |
+---------------+-------+
1 row in set (0.01 sec)

所以我的结论是需要打开端口?

@约翰:

tcp        0      0 0.0.0.0:3306            0.0.0.0:*               LISTEN      1669/mysqld   

NAME         NETWORK  DIRECTION  PRIORITY  ALLOW     DENY  DISABLED
mysqlaccess  default  INGRESS    1000      tcp:3306        False

从我的笔记本电脑端口的 Telnet 测试:

C:\Users\fumanchu>telnet x.x.x.x 3306
[                                                                                                                        5.7.33-0ubuntu0.16.04.1zzzzzzzz}<[:X'mysql_native_password

Connection to host lost.

尝试使用来自 MySQL Workbench:

的 GUI

添加了显示我的 VPC 条目的控制台 GCP 日志:

mysqlaccess
Ingress
Apply to all    
IP ranges: 0.0.0.0/0
tcp:3306
Allow
1000
Off —   —   

如果你可以通过 ssh 连接。

更改连接方式

在那里您可以输入与之前 ssh 连接相同的数据

Per @JohnHanley 这里是我的问题和步骤的总结:

  1. 使用本地 pc 数据库获取 mysql workbench 的工作设置。这确保您拥有数据库,并且与本地计算机的连接正常工作。
  2. 将数据库导出到远程系统,在我的例子中是 GCE linux VM(ubuntu 我使用)导出数据库有许多简单的步骤(mysql基于转储)
  3. 确保 linux 虚拟机具有 mysql 服务器和客户端设置,并导入数据库
  4. 现在设置 ssh 连接:
  5. 确保端口 3306 在 linux 虚拟机上打开,方法是转到您的 vm/project 的 VPC 服务,并确保端口打开,或添加规则以公开端口 3306 入口.
  6. 连接到虚拟机(您应该在第 3 步之前完成此操作),方法是使用 GCE 控制台并连接到实例。这也确保您在 pc 上为 ssh 创建了本地文件。 (~/.ssh/google_compute_*)
  7. 从您的电脑连接到虚拟机。使用 gcloud 控制台工具检查下一步。如果您还没有使用过 gcloud 控制台工具,请安装它们打开命令/powershell window.
  8. 键入“gcloud compute ssh“实例名称”。如果连接成功,您现在知道您已为 ssh 正确配置服务器,并接受外部请求。
  9. 然后设置 mysql workbench 与 gcloud ssh 请求的设置相同...它可以使用相同的凭据和脚本,帮助文件存在于上面的 /.ssh/ 文件夹中我参考了。