每当我在Rails应用程序的数据库上运行rake任务时,都会出现以下错误。
pg_dump: server version: 9.2.4; pg_dump version: 9.1.5
pg_dump: aborting because of server version mismatch
我在Google周围搜索,发现了一些有关更新postgres brew软件包的建议,但这没有用。
为什么使用了不正确的pg_dump版本,我该如何解决?还是我应该寻找什么搜索词以找到解决方案?
编辑
有关我的pg_dump配置的信息:
$ pg_dump --version
> pg_dump (PostgreSQL) 9.1.5
$ which pg_dump
> /usr/bin/pg_dump
$ echo $PATH
> /Users/andrewharvey/.rvm/gems/ruby-1.9.3-p392@mantawatch/bin:/Users/andrewharvey/.rvm/gems/ruby-1.9.3-p392@global/bin:/Users/andrewharvey/.rvm/rubies/ruby-1.9.3-p392/bin:/Users/andrewharvey/.rvm/bin:/usr/local/heroku/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/Users/andrewharvey/.rvm/bin
我正在使用oh_my_zsh,并且路径在我的.zshrc文件中定义。这可能是导致我出现问题的原因(并且我确信可以清除此问题),不幸的是,我对调试和编辑它的工作知之甚少。感谢指针(我使用的是RVM和通过Homebrew安装的postgres)。
source $ZSH/oh-my-zsh.sh
[[ -s "$HOME/.rvm/scripts/rvm" ]] && . "$HOME/.rvm/scripts/rvm"
alias pg='pg_ctl -D /usr/local/var/postgres -l /usr/local/var/postgres/server.log'
export
PATH=$PATH:/usr/local/bin:/Users/andrewharvey/.rvm/gems/ruby-2.0.0-p0/bin:/Users/andrewharvey/.rvm/gems/ruby-2.0.0-p0@global/bin:/Users/andrewharvey/.rvm/rubies/ruby-2.0.0-p0/bin:/Users/andrewharvey/.rvm/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin
### Added by the Heroku Toolbelt
export PATH="/usr/local/heroku/bin:$PATH"
以下输出显示什么?看起来您要使用的pg_dump版本是9.1版本,而要连接的集群是9.2版本。如果真是这样,那么您需要确定9.2 pg_dump的正确路径。
pg_dump --version
which pg_dump
echo $PATH
[在OP提供更多详细信息后进行了编辑]
根据此页面:https ://wiki.postgresql.org/wiki/Installers/Mac_OS_X,homebrew可能在处安装了该工具/usr/local/bin
。不过,您目前$PATH
已/usr/local/bin
位于后,其他几个路径。我已经整理好您的$PATH
设置了。因此,请尝试将以下更改保存到您的.zshrc
文件中,并提供源代码以获取更改(source ~/.zshrc
)。
export PATH=/usr/local/bin:/Users/andrewharvey/.rvm/gems/ruby-2.0.0-p0/bin:/Users/andrewharvey/.rvm/gems/ruby-2.0.0-p0@global/bin:/Users/andrewharvey/.rvm/rubies/ruby-2.0.0-p0/bin:/Users/andrewharvey/.rvm/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:$PATH
export PATH="/usr/local/heroku/bin:$PATH"
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句