6

很清楚如何在本地从 psql 登录 heroku postgres 数据库:https ://devcenter.heroku.com/articles/heroku-postgresql#external-connections-ingress

但是,如何在本地设置 database.yml 以使本地 rails 实例与 heroku 数据库通信?

4

1 回答 1

11

尝试这样的事情

production:
  adapter: postgresql
  encoding: utf8
  database: DB_NAME_FROM_HEROKU
  username: USERNAME_FROM_HEROKU
  password: PASSWORD_FROM_HEROKU
  host: HOSTNAME_FROM_HEROKU # something like ec2-xxx-xx-xxx-xxxx.compute-1.amazonaws.com
  sslmode: require

要获取值,您需要运行以下命令

$ heroku pg:credentials:url

然后在生产环境中启动您的应用程序

$ rails s -e production

由于数据库托管在 Internet 上,因此在连接到云中数据库的本地计算机上运行时,预计会有很多延迟和普遍缺乏响应能力。

PS:确保本地应用程序的架构版本与 heroku 上的远程数据库完全匹配。否则,运行迁移时可能会丢失数据

于 2013-09-02T10:18:23.197 回答