在GCP Compute Engine VM上远程连接到MySQL

时间:2019-09-17 14:08:55

标签: mysql google-cloud-platform google-compute-engine remote-access

我想使用数据库客户端(最好是DBeaver)远程连接到安装在Google Cloud Provider VM上的MySQL服务器。

我创建了一个运行Debian 9的Compute Engine VM实例,并安装了MySQL服务器。

必须通过主要内部IP访问VM。我们拥有自己的网络和一个子网。

2 个答案:

答案 0 :(得分:0)

您可以使用Google Cloud IAP创建到您的实例的TCP隧道,并安全地连接到没有公共IP地址的实例。

在桌面上执行此命令以启动隧道。编辑命令,然后使用设置替换大写字母中的参数。

Windows语法。对于Linux,在每行末尾将^替换为&

gcloud compute start-iap-tunnel INSTANCE_NAME 3306 ^
--local-host-port=localhost:3306 ^
--zone=INSTANCE_ZONE ^
--project=PROJECT_ID

创建允许Cloud IAP网络块35.235.240.0/20的防火墙规则。通常,我会允许所有端口,这使我可以建立我需要的任何端口,例如SSH。

现在您可以在端口3306上连接到本地主机。该连接将通过隧道传输到您的实例。

如果将3306替换为22,则可以将SSH隧道传输到您的实例。

答案 1 :(得分:0)

2020更新:您可以按照here中所述进行端口转发。在笔记本电脑上运行:

gcloud compute ssh YOUR_INSTANCE_NAME \
--project YOUR_PROJECT_NAME \
--zone YOUR_INSTANCE_ZONE \
-- -L 3306:localhost:3306

之后,您可以使用localhost:3306上的DBeaver连接到远程MySQL