当我运行 heroku db:pull
时,我得到一个 NoMethodError
。狂热的谷歌搜索未能提供解决方案。
rails_app[master*]/
↪ heroku db:pull --remote [app] --confirm [app]
Loaded Taps v0.3.24
Auto-detected local database: postgres://127.0.0.1/[db name]?encoding=utf8
Warning: Data in the database 'postgres://127.0.0.1/[db name]?encoding=utf8' will be overwritten and will not be recoverable.
Failed to connect to database:
NoMethodError -> undefined method `close' for nil:NilClass
当我将数据库名称提供为 postgres://localhost/app_development
时,结果是相同的
我安装了 taps、pg、sequel:
rails_app[master*]/
↪ gem list --local | grep -E taps\|pg\|sequel
pg (0.15.1, 0.15.0, 0.14.1)
sequel (3.46.0, 3.20.0)
taps (0.3.24)
为了以防万一,我的 rails config/database.yml
development: &default
adapter: postgresql
database: app_development
encoding: utf8
min_messages: warning
pool: 5
timeout: 5000
test:
<<: *default
database: app_test
我在 Rails 3.2.13 上。
有没有人遇到这个问题并提出解决方案?
最佳答案
db:push
和 db:pull
目前已弃用;请使用pgbackups导入导出数据
关于ruby-on-rails - 英雄数据库 :pull Failed to connect to database NoMethodError,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15935319/