Как исправить ошибки несоответствия версии pg_dump?

При попытке получить локальные данные в 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/ , но я не знаю, как это сделать удаление.

Я запускаю 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

Чтобы использовать их вместо 9.1 из Apple, когда вы работаете в терминале, в документации postgres.app говорится:

 PATH="/Applications/Postgres.app/Contents/MacOS/bin:$PATH" 

и поместите его в файл .profile .

После того, как вы это сделали, и вы запустите pg_dump , вы больше не получите ошибку, это неправильная версия, потому что это будет тот, который поставляется с postgres.app (в настоящее время 9.2.2).

У меня есть эта настройка, и она работает нормально для меня.

Если вам нужно только обновить pg_dump до последней версии, и у вас есть доморощенный и mac, если приложение имеет самую последнюю версию, а местная версия pg:

brew upgrade postgresql

Если вы используете postgresapp 9.3.x, путь отличается. Следующие работали для меня (любезно предоставлено http://sigmyers.com/blog/2013/3/12/postgres-pgdump-version-mismatch-error-postgresapp-postgresappcom )

 export PG_BIN_PATH="/Applications/Postgres.app/Contents/Versions/9.3/bin/" PATH=$PG_BIN_PATH:$PATH 

Проверьте здесь последний путь: http://postgresapp.com/documentation/cli-tools.html

Я запускаю сервер горного льва. Мой сервер PostgeSQL находится в версии 9.2.1, а инструменты по умолчанию – 9.1.5.

Мне пришлось использовать:

 PATH="/Applications/Server.app/Contents/ServerRoot/usr/bin:$PATH" 

чтобы он работал.

Да, иногда, если вы запускаете Postgres.app, это может произойти после обновления. Убедитесь, что вы перезапустили свой Postgres.app – он обновит вашу PATH.

В моем случае я устанавливаю postgresql через homebrew, и исполняемые файлы находятся здесь: /usr/local/opt/[email protected]/bin

Или вы копируете дамп и восстанавливаете выполнение в папку /Applications/Postgres.app/Contents/SharedSupport

или в PdAgmin вы указываете путь PG bin (в свойствах -> двоичный путь) на путь исполняемых файлов вашего postgre

Interesting Posts

Дифференциальные правила использования getBaseContext для Android, getApplicationContext или использования «этого»

Есть ли сжатый способ перебора streamа с индексами в Java 8?

Как создать хранимую процедуру в MS Access?

У меня случайно есть BSOD, восстановление ПК заставит его работать?

Получение всех типов, реализующих интерфейс

Symfony 2: создание службы из репозитория

Разница между Enum и Define Statement

Нарушение сонара: безопасность – массив хранится непосредственно

URL-адрес JDBC для конфигурации MySQL для использования кодировки символов utf8

Есть ли способ «отключить» подключенный сетевой диск, но НЕ удалять сопоставление?

Сценарий оболочки для удаления каталогов старше n дней

Как вызвать .NET Webservice с Android с помощью KSOAP2?

Может ли JavaScriptSerializer исключать свойства с нулевыми значениями / значениями по умолчанию?

Windows 7 Поиск части имени файла

Как найти размер виртуальной памяти и размер кеша в Linux-системе?

Давайте будем гением компьютера.