gpt4 book ai didi

ruby-on-rails - rake 数据库 :reset fails halfway through dropping databases

转载 作者:行者123 更新时间:2023-11-29 14:36:30 25 4
gpt4 key购买 nike

在尝试解决我遇到的 NoMethodError 时,我在某处读到运行 rake db:reset 可能有助于解决问题。我是 Rails 的新手,并且在不知道这样做会做什么的情况下犯了一个错误。当我运行它时,它成功删除了我的开发数据库 (PosgreSQL),但随后出现 fatal error 并显示以下消息:

Dropped database 'development'
FATAL: Peer authentication failed for user "postgres"
Couldn't drop database 'test'
rake aborted!
PG::ConnectionBad: FATAL: Peer authentication failed for user "postgres"

Tasks: TOP => db:drop:_unsafe

我尝试手动删除测试数据库并重新运行 rake db:reset,但是出现了同样的错误。所以我丢失了我在开发数据库中的数据,除了一个空的生产数据库外什么都没有。

我意识到这可能可以通过编辑 pg_hba.conf 文件来解决,但是我的应用程序正在我学校的高性能集群 (Linux VM) 上运行,我没有写入权限那个文件。我不明白的是为什么它能够删除我的开发数据库,​​而不是其余的。

我还有我的 seeds.rbschema.rb 文件,那么是否有可能重建我的数据库而不把事情搞得一团糟?或者有什么方法可以解决直接影响重置命令的问题吗?

最佳答案

rake db:reset 运行 db:dropdb:setupdb:drop 删除当前 RAILS_ENV 的数据库。如果未设置 RAILS_ENV,它将尝试同时删除开发和测试数据库。

尝试在运行前设置 RAILS_ENV:

RAILS_ENV=development rake db:reset

关于ruby-on-rails - rake 数据库 :reset fails halfway through dropping databases,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43794773/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com