我配置了privateIP的Cloud SQL实例和配置了服务帐号凭据的VM。
我可以使用云代理成功地从VM实例连接到SQL实例(PrivateIP),如下所示:
./cloud_sql_proxy -instances=proj:us-central1:test-sql=tcp:5353 -credential_file=service.json以及来自VM的,
sqlcmd -S tcp:127.0.0.1,5353 -U sqlserver所有这些都是从VM和Google cloud内部运行的。如何从Local SSMS studio存档相同的连接,我已经尝试下载cloud-sql-proxy for windows系统,并调用相同的
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命令错误:无法连接到“proj:us-CENTERAL1:test-sql”:拨号tcp :3307: connectex:连接尝试失败,因为被连接方在一段时间后没有正确响应,或者建立的连接失败,因为连接的主机没有响应。
你知道问题出在哪里吗?为什么不能使用SSMS从本地计算机使用正确的凭证文件进行连接?或者我是否遗漏了任何配置?
发布于 2021-02-11 07:04:05
正如this文档所说:“当您配置云SQL实例使用内网IP时,您使用的是内网服务访问。内网服务访问是您的私有网络网络与您的云SQL实例所在的底层Google services私有网络之间的私有网络对等连接。”这意味着只有Google网络才能访问私有IP。但是,您可以使用内网服务访问,通过VPN tunnel或Cloud Interconnect从外部源连接到您的私有网络。拓扑应该是这样的
ON-PREMISE - VPN -您的GCP项目
那么,您是否检查过您的VPN通道或云互通设置是否正确?
我建议您查看一下here,并确保您遵循了以下内容:
1.-确保您的私有网络通过专用互联或合作伙伴互联的云VPN通道或VLAN附件连接到外部网络。
2.-识别内网服务连接产生的对等连接:
* cloudsql-mysql-googleapis-com
* cloudsql-postgres-googleapis-com
* servicenetworking-googleapis-com3.-更新所有对等连接,开启导出自定义路由。
4.-识别专用服务连接使用的分配范围。
5.-在管理云VPN通道或云互联附件(VLAN)的BGP会话的云路由器上,为分配的范围创建云路由器自定义路由通告。
https://stackoverflow.com/questions/66139419
复制相似问题