【问题标题】:How to connect SSMS from my local Windows machine to Google Cloud SQL Proxy which is running in GCP VM Instance?如何将 SSMS 从我的本地 Windows 机器连接到在 GCP VM 实例中运行的 Google Cloud SQL 代理?
【发布时间】:2021-05-14 06:57:25
【问题描述】:

我为 Cloud SQL 实例配置了私有 IP,并为虚拟机配置了服务帐户凭据。

我可以使用云代理从VM实例成功连接到SQL服务器到SQL实例(私有IP),如下所示,

./cloud_sql_proxy -instances=proj:us-central1:test-sql=tcp:5353 -credential_file=service.json

从虚拟机,

sqlcmd -S tcp:127.0.0.1,5353 -U sqlserver

所有这些都在虚拟机和谷歌云内部工作。 如何从本地 SSMS 工作室存档相同的连接,我已经尝试为 windows 系统下载 cloud-sql-proxy,并使用相同的调用,

cloud_sql_proxy.exe -instances=proj:us-central1:test-sql=tcp:5353 -credential_file=service.json

using credential file for authentication; email=test@proj.iam.gserviceaccount.com
Listening on 127.0.0.1:5353 for proj:us-central1:test-sql
Ready for new connections

我尝试使用以下连接参数连接 SSMS,

来自 cloud_sql_proxy CMD 的错误: 无法连接到“proj:us-central1:test-sql”: dial tcp :3307: connectex: 连接尝试失败,因为连接方在一段时间后没有正确响应,或者建立连接失败,因为连接的主机未能响应。

知道问题出在哪里,为什么无法使用 SSMS 从本地机器连接正确的凭据文件?还是我缺少任何配置?

【问题讨论】:

  • 您是否尝试过使用 SQL Server 的默认端口 1433?以下是相关的MS docs,指的是端口和端口配置(检查您的 Windows 计算机中是否没有任何特定的防火墙规则阻止这些端口)。通过从 Windows Powershell 运行以下命令来启动代理:./cloud_sql_proxy -instances=[Instance-connection-name]=tcp:1433 -credential_file=service.json 应该可以工作。
  • 如果它们不起作用,请发布操作系统的详细信息、SSMS 版本、Cloud SQL 代理版本以及与您运行代理时的环境相关的任何其他详细信息。
  • 已经尝试过了,但是没有用。 @丹

标签: sql-server-2008 google-cloud-platform cloud-sql-proxy


【解决方案1】:

正如this 文档所述,“当您将 Cloud SQL 实例配置为使用私有 IP 时,您将使用私有服务访问。私有服务访问是作为您的 VPC 网络和底层 Google 服务 VPC 网络之间的 VPC 对等连接来实现的您的 Cloud SQL 实例所在的位置”。这意味着只有 Google 网络可以访问私有 IP。但是,您可以使用私有服务访问权限通过 VPN tunnelCloud Interconnect 从外部源连接到 Cloud SQL 资源到您的 VPC 网络。拓扑应该是这样的

本地 ----- VPN ----- 您的 GCP 项目

那么,您是否检查过您的 VPN 隧道或云互连设置是否正确?

我建议您查看here 并确保您已遵循此操作:

1.- 确保您的 VPC 网络使用 Cloud VPN 隧道或专用互连或合作伙伴互连的 VLAN 连接连接到外部网络。

2.- 识别私有服务连接产生的对等连接:

  * cloudsql-mysql-googleapis-com
  * cloudsql-postgres-googleapis-com
  * servicenetworking-googleapis-com

3.- 更新所有对等连接以启用导出自定义路由。

4.- 确定专用服务连接使用的分配范围。

5.- 在管理 Cloud VPN 隧道或 Cloud Interconnect 连接 (VLAN) 的 BGP 会话的 Cloud Router 上为分配的范围创建 Cloud Router 自定义路由通告。

【讨论】:

    猜你喜欢
    • 2022-03-09
    • 2018-06-05
    • 1970-01-01
    • 2023-03-16
    • 2021-09-08
    • 2019-05-18
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多