我正在尝试使用 golang migrate for Cloud SQL 在云端运行时运行数据库迁移,它显示了这个日志
无法创建迁移:拨打 tcp 127.0.0.1:5432: connect: connection 拒绝
我使用的URI格式是
postgres://{user}:{password}@cloudsql/{host}:{port}/{db_name}
主机来自 Cloud SQL 的连接名称project-name:region-name:instance-name
我的设置有什么问题吗,或者我在云运行设置中遗漏了什么? 或者有更好的方法从 go 项目内部进行数据库迁移? 顺便说一句,我正在通过 github 操作将项目部署到云运行到工件注册表
您需要使用 Go Connector 或使用 Cloud Run 的内置 Cloud SQL 集成(它在后台运行 Cloud SQL Auth Proxy)。默认情况下,Cloud SQL IP 地址通过防火墙与互联网隔离,这就是您当前的方法不起作用的原因。