5

运行rake db:structure:dump命令时,遇到以下错误:

Larson-2:app larson$ rake db:structure:dump
pg_dump: server version: 9.1.3; pg_dump version: 9.0.4
pg_dump: aborting because of server version mismatch
rake aborted!
Error dumping database

我该如何更新 pg_dump?我安装了 pg 9.1.3,有没有办法将 Rails 中的引用更新到新版本?

当我尝试通过自制软件更新 postgres 时,我得到以下输出:

Larson-2:app larson$ sudo brew upgrade postgresql
Password:
Error: postgresql already upgraded
4

3 回答 3

5

这是我解决问题的方法,首先更新自制软件:

brew update
如果您收到此错误:error: Your local changes to the following files would be overwritten by merge:

然后:

cd /usr/local/cellar
git reset --hard FETCH_HEAD

完成更新 homebrew 后:
sudo brew install postgresql
它将安装 9.1.3(或 pg 的最新版本)和任何依赖项。

于 2012-03-21T08:30:54.773 回答
1

在我的机器上,问题出在 PATH 上。/usr/bin 上有一个 pg_dump v. 9.0.10,我的服务器是 9.1.something。

更改路径以使 /usr/local/Cellar/postgres/9..../bin (或您使用的实际 postgres 安装的路径)比其他任何事情都轻而易举。我只需要重新打开任何打开的终端窗口。

于 2013-07-31T22:18:49.467 回答
0

我遇到过同样的问题。rake db:reset遵循 postgres 命令行工具文档,然后必须运行rake db:test:prepare以复制我的测试数据库。在我做了这些事情之后,它起作用了。

于 2013-01-24T18:45:50.807 回答