Rails无法使用代理连接Google Cloud SQL

5
我正在使用Google Cloud SQL(postgresql)和App Engine部署一个Rails 5应用程序,但是代理出现了问题。我按照这里的教程Ruby on Rails Cloud Sql成功设置了代理。

从我的本地机器上: psql -h "/cloudsql/[CONNECTION:NAME]" --user [USER] --password

我可以看到所有远程数据库和代理处理的连接在另一个窗口中。接下来,我尝试运行rake db:migrate并得到以下错误。

PG::ConnectionBad: could not connect to server: No such file or directory
        Is the server running locally and accepting
        connections on Unix domain socket "/cloudsql/[CONNECTION:NAME]/.s.PGSQL.5432"?

这是我的数据库配置文件database.yml:
  default: &default
  adapter: postgresql
  encoding: utf8
  pool: 5
  timeout: 5000
  username: [USER]
  password: [USER:PASS]
  host: /cloudsql/[CONNECTION:NAME]

由于代理是从本地机器工作的,所以问题可能出在我的rails应用程序或pg宝石上。我已经重新安装了PG宝石,但没有改变。我该如何让我的rails应用程序成功使用代理?


我正好遇到相反的问题哈哈。我无法通过PSQL的套接字连接,但是当应用程序部署时,Rails可以连接到套接字。据我所见,你没有做错任何事情。 - Francis Malloch
1个回答

1

你是否激活了Cloud SQL API?

在我的情况下,我忘记了这一点。在API控制台中启用它。然后它对我起作用了。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接