如何从本地psql登录到heroku postgres数据库非常清楚:https://devcenter.heroku.com/articles/heroku-postgresql#external-connections-ingress
但是,如何在本地设置database.yml以使本地rails实例与heroku数据库通信?
答案 0 :(得分:10)
尝试这样的事情
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
由于数据库托管在互联网上,因此需要大量的延迟和时间。使用连接到云中数据库的本地计算机时,通常缺乏响应能力。
PS:确保本地应用的架构版本与heroku上的远程数据库完全匹配。否则,运行迁移时可能会有数据锁