当尝试将本地数据获取到 Heroku 时,我遇到两个不同版本的 pg_dump 之间的版本不匹配。
具体来说,我收到以下消息:
pg_dump: server version: 9.2.2; pg_dump version: 9.1.4
pg_dump: aborting because of server version mismatch
我发现其他人也遇到这个问题,但不知道如何实施所提出的解决方案。 (我对 Ruby on Rails、PostgreSQL、Heroku 和 Mac 都是新手!还处于边走边玩的阶段。)
我在想,如果我卸载本地计算机上的所有 PostgreSQL 并重新开始从头开始全新安装 PostgreSQL 9.2.2,我的生活可能会简化。http://postgresapp.com/ http://postgresapp.com/,但我不知道如何进行卸载。
我正在运行 Mac OS X Mountain Lion 10.8.2。
OS X 10.8 附带pg_dump
版本9.1.4中/usr/bin
目录,以及psql
以及其他程序客户端PostgreSQL 工具。这并不意味着安装了 PostgreSQL 作为服务器(除非您有 OS X Server Edition)。
所以你不必卸载 PostgreSQL,因为它还没有安装,最好不要删除这些 postgres 客户端工具/usr/bin
因为它们属于 Apple 发布的系统。他们只需要避开即可。
postgres.app 提供的软件包包含 PostgreSQL 服务器以及与该服务器版本相同的客户端工具。这些工具安装在/Applications/Postgres.app/Contents/MacOS/bin
当您在终端中工作时,要使用这些而不是 Apple 的 9.1,postgres.app文档 http://postgresapp.com/documentation说要做:
PATH="/Applications/Postgres.app/Contents/MacOS/bin:$PATH"
并将其放入你的.profile
file.
一旦你做到了,你就跑了pg_dump
,您不应该再收到版本错误的错误,因为它将是 postgres.app 附带的版本(当前为 9.2.2)。
我有这个设置,它对我来说工作正常。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)