是否可以使用golang灵活地从app引擎连接到google cloud sql postgres实例?

问题描述 投票:2回答:2

我能够找到这个文档,它解释了如何从python:https://cloud.google.com/appengine/docs/flexible/python/using-cloud-sql-postgres做到这一点

我找不到任何与golang相同的东西。这甚至可能吗?

postgresql google-app-engine go google-cloud-sql
2个回答
5
投票

有可能的。

免责声明:我没有尝试过这样做,因此下面可能会出现拼写错误/小错误。另外,我想向您保证,CloudSQL文档团队了解并正在为其他语言(包括Go)添加示例。

在内部,AppEngine Flex为您运行CloudSQL proxy,您的代码通过使用unix socket的常规驱动程序连接到CloudSQL。

所以虽然没有Go的例子,但它应该相当容易。假设您使用标准Go的sql库并且阅读https://godoc.org/github.com/lib/pq看起来在您的代码中需要这样的东西:

db, err := sql.Open("postgres", "user=username password=password host=/cloudsql/INSTANCE_CONNECTION_NAME dbname=databasename")

或者,如果您使用不同的格式或库,只需确保为主机参数指定/cloudsql/INSTANCE_CONNECTION_NAME

此外,请确保遵循https://cloud.google.com/appengine/docs/flexible/python/using-cloud-sql-postgres的所有非Python特定步骤。

PS:这是Django的例子:Postgres settings for Django on Google App Engine Flexi


0
投票

上面接受的答案是正确的,但我只是想在此注意到谷歌现在已经添加了官方文档,在此详细解释了同样的事情

https://cloud.google.com/appengine/docs/flexible/go/using-cloud-sql-postgres

© www.soinside.com 2019 - 2024. All rights reserved.