我能够找到这个文档,它解释了如何从python中进行操作:https://cloud.google.com/appengine/docs/flexible/python/using-cloud-sql-postgres
我找不到任何与golang相同的东西。这甚至可能吗?
答案 0 :(得分: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
答案 1 :(得分:0)
上面接受的答案是正确的,但我只是想在这里指出Google现在已经添加了官方文档,在此处详细说明了同一件事
https://cloud.google.com/appengine/docs/flexible/go/using-cloud-sql-postgres