1

您好,我想知道如何使用 activerecord 和 postgresql 将露营应用程序部署到 herokus cedar 堆栈上。

我的数据库.yml:

production:
    adapter: postgresql
    host: localhost
    database: mydb

现在我在连接到数据库时遇到问题我在同一个文件中有一个开发数据库配置。

更新: 作为对 Johns 的回答,这里是 heroku 给我的错误日志,

2012-06-15T20:00:24+00:00 app[web.1]:   from /app/vendor/bundle/ruby/1.9.1/gems/activerecord-3.2.6/lib/active_record/connection_adapters/postgresql_adapter.rb:329:in `initialize'
2012-06-15T20:00:24+00:00 app[web.1]:   from /app/vendor/bundle/ruby/1.9.1/gems/activerecord-3.2.6/lib/active_record/connection_adapters/abstract/connection_pool.rb:319:in `checkout_new_connection'
2012-06-15T20:00:24+00:00 app[web.1]:   from /app/vendor/bundle/ruby/1.9.1/gems/activerecord-3.2.6/lib/active_record/connection_adapters/postgresql_adapter.rb:1206:in `connect'
2012-06-15T20:00:24+00:00 app[web.1]:   from /app/vendor/bundle/ruby/1.9.1/gems/activerecord-3.2.6/lib/active_record/connection_adapters/abstract/connection_pool.rb:233:in `checkout'
2012-06-15T20:00:24+00:00 app[web.1]: /app/vendor/bundle/ruby/1.9.1/gems/activerecord-3.2.6/lib/active_record/connection_adapters/postgresql_adapter.rb:1206:in `initialize': could not connect to server: Connection refused (PG::Error)
2012-06-15T20:00:24+00:00 app[web.1]:   from /app/vendor/bundle/ruby/1.9.1/gems/activerecord-3.2.6/lib/active_record/connection_adapters/abstract/connection_pool.rb:95:in `connection'
2012-06-15T20:00:24+00:00 app[web.1]:   from /app/vendor/bundle/ruby/1.9.1/gems/activerecord-3.2.6/lib/active_record/connection_adapters/abstract/connection_specification.rb:142:in `connection'
2012-06-15T20:00:24+00:00 app[web.1]:   from /app/vendor/bundle/ruby/1.9.1/gems/activerecord-3.2.6/lib/active_record/connection_adapters/postgresql_adapter.rb:28:in `postgresql_connection'
2012-06-15T20:00:24+00:00 app[web.1]:   from /usr/local/lib/ruby/1.9.1/monitor.rb:201:in `mon_synchronize'
2012-06-15T20:00:24+00:00 app[web.1]:   from /app/vendor/bundle/ruby/1.9.1/gems/rack-1.4.1/lib/rack/builder.rb:51:in `initialize'
2012-06-15T20:00:24+00:00 app[web.1]:   from /app/vendor/bundle/ruby/1.9.1/gems/activerecord-3.2.6/lib/active_record/connection_adapters/postgresql_adapter.rb:28:in `new'
2012-06-15T20:00:24+00:00 app[web.1]:   from /app/vendor/bundle/ruby/1.9.1/gems/activerecord-3.2.6/lib/active_record/connection_adapters/abstract/connection_pool.rb:236:in `loop'
2012-06-15T20:00:24+00:00 app[web.1]:   from /app/vendor/bundle/ruby/1.9.1/gems/activerecord-3.2.6/lib/active_record/connection_adapters/abstract/connection_pool.rb:236:in `block in checkout'
2012-06-15T20:00:24+00:00 app[web.1]:   from /app/vendor/bundle/ruby/1.9.1/gems/rack-1.4.1/lib/rack/builder.rb:40:in `parse_file'
2012-06-15T20:00:24+00:00 app[web.1]:   from /app/config.ru:12:in `block in <main>'
2012-06-15T20:00:24+00:00 app[web.1]:   from /app/config.ru:1:in `<main>'
2012-06-15T20:00:24+00:00 app[web.1]:   from /app/src/nuts.rb:8:in `create'
2012-06-15T20:00:24+00:00 app[web.1]:   from /app/vendor/bundle/ruby/1.9.1/gems/rack-1.4.1/lib/rack/server.rb:137:in `start'
2012-06-15T20:00:24+00:00 app[web.1]:   from /app/vendor/bundle/ruby/1.9.1/gems/rack-1.4.1/lib/rack/server.rb:301:in `wrapped_app'
2012-06-15T20:00:24+00:00 app[web.1]:   Is the server running on host "localhost" and accepting
2012-06-15T20:00:24+00:00 app[web.1]:   from /app/vendor/bundle/ruby/1.9.1/gems/activerecord-3.2.6/lib/active_record/connection_adapters/postgresql_adapter.rb:1206:in `new'
2012-06-15T20:00:24+00:00 app[web.1]:   from /app/vendor/bundle/ruby/1.9.1/gems/activerecord-3.2.6/lib/active_record/connection_adapters/abstract/connection_pool.rb:309:in `new_connection'
2012-06-15T20:00:24+00:00 app[web.1]:   from /app/vendor/bundle/ruby/1.9.1/gems/rack-1.4.1/lib/rack/builder.rb:51:in `instance_eval'
2012-06-15T20:00:24+00:00 app[web.1]:   from /app/config.ru:1:in `new'
2012-06-15T20:00:24+00:00 app[web.1]:   from /app/vendor/bundle/ruby/1.9.1/gems/activerecord-3.2.6/lib/active_record/connection_adapters/abstract/connection_pool.rb:241:in `block (2 levels) in checkout'
2012-06-15T20:00:24+00:00 app[web.1]:   from /app/vendor/bundle/ruby/1.9.1/gems/activerecord-3.2.6/lib/active_record/connection_adapters/abstract/connection_specification.rb:168:in `retrieve_connection'
2012-06-15T20:00:24+00:00 app[web.1]:   from /app/vendor/bundle/ruby/1.9.1/gems/rack-1.4.1/lib/rack/builder.rb:40:in `eval'
2012-06-15T20:00:24+00:00 app[web.1]:   from /app/vendor/bundle/ruby/1.9.1/gems/rack-1.4.1/lib/rack/server.rb:200:in `app'
2012-06-15T20:00:24+00:00 app[web.1]:   from /app/vendor/bundle/ruby/1.9.1/gems/activerecord-3.2.6/lib/active_record/model_schema.rb:223:in `table_exists?'
2012-06-15T20:00:24+00:00 app[web.1]:   from (eval):20:in `create_schema'
2012-06-15T20:00:24+00:00 app[web.1]:   from /app/vendor/bundle/ruby/1.9.1/bin/rackup:19:in `<main>'
2012-06-15T20:00:24+00:00 app[web.1]:   TCP/IP connections on port 5432?
2012-06-15T20:00:24+00:00 app[web.1]:   from /app/vendor/bundle/ruby/1.9.1/gems/activerecord-3.2.6/lib/active_record/connection_adapters/abstract/connection_pool.rb:404:in `retrieve_connection'
2012-06-15T20:00:24+00:00 app[web.1]:   from /app/vendor/bundle/ruby/1.9.1/gems/activerecord-3.2.6/lib/active_record/connection_adapters/abstract/connection_pool.rb:96:in `block in connection'
2012-06-15T20:00:24+00:00 app[web.1]:   from /usr/local/lib/ruby/1.9.1/monitor.rb:201:in `mon_synchronize'
2012-06-15T20:00:24+00:00 app[web.1]:   from /app/vendor/bundle/ruby/1.9.1/gems/rack-1.4.1/lib/rack/server.rb:252:in `start'
2012-06-15T20:00:24+00:00 app[web.1]:   from /app/vendor/bundle/ruby/1.9.1/bin/rackup:19:in `load'
2012-06-15T20:00:24+00:00 app[web.1]:   from /app/vendor/bundle/ruby/1.9.1/gems/rack-1.4.1/bin/rackup:4:in `<top (required)>'
4

1 回答 1

1

当您将应用程序部署到Heroku 时,Heroku 会将您的 database.yml 替换为它们自己连接到DATABASE_URL环境变量(通常是在您设置应用程序时配置的 postgres 数据库)。

你看到的问题是什么?

于 2012-06-15T06:33:22.363 回答