Неверная версия pg_dump на Ubuntu

Я первоначально установил пост-ГРЭС 9.2 на Ubuntu и позже обновил до 9,3 согласно инструкциям здесь: http://www.postgresql.org/download/linux/ubuntu/ (использующий пост-ГРЭС способный репозиторий).

Однако pg_dump, который является псевдонимом для/usr/share/postgresql-common/pg_wrapper, не стал обновленным.

pg_dump: server version: 9.3.4; pg_dump version: 9.2.8
pg_dump: aborting because of server version mismatch

Как я обновляю это? Я попытался выяснить, какие пакеты требуют обновления, но я не действительно даже уверен, что это - корректная вещь сделать.

5
задан 20 July 2014 в 02:45
6 ответов

Оказывается, установка клиента 9.3 не приводит к автоматическому удалению клиента 9.2, и если они оба находятся на машине в таком состоянии, то это то, что вы получите. Ответ заключается в удалении postgresql-клиента 9.2 (или любой другой подходящей старой версии в вашем случае).

8
ответ дан 3 December 2019 в 01:00

можно проверить вывод команды

dpkg -l | grep postgres

чтобы посмотреть, какие версии установлены и активны. pg_dump обычно является частью пакета postgresql-клиент-common.

(И отредактируйте свой вопрос, непонятно, как вы обновились с версии 9.3 до 9.3 ... )

.
4
ответ дан 3 December 2019 в 01:00

tl: dr; нет необходимости удалять старые кластеры. Вместо этого поместите следующее в ~ / .postgresqlrc

,

например, 9.6 main *


Нет необходимости удалять старые кластеры . Я просмотрел / usr / share / postgresql-common / pg_wrapper , в котором есть следующие строки:

# for psql we always want the latest version, as this is backwards 
compatible
# to every major version that that we support
if ($cmdname eq 'pg_wrapper') {
    error "pg_wrapper should not be called directly, but through a symlink";
} elsif ($cmdname =~ /^(psql|pg_archivecleanup|pg_isready)$/) {
    $cmd = get_program_path ($cmdname, get_newest_version);
} else {
    $cmd = get_program_path ($cmdname, $version);
}

Другими словами, такие команды, как psql , всегда будут запускаться с последней установленной версией. установлен на вашем компьютере, но такие команды, как pg_dump , не будут.

Вверху pg_wrapper есть подсказка:

# Call a PostgreSQL client program with the version, cluster and default
# database specified in ~/.postgresqlrc or
# /etc/postgresql-common/user_clusters.

man postgresqlrc сообщает нам, что ~ / .postgresqlrc должен быть отформатирован следующим образом:

<версия> <имя кластера> <база данных по умолчанию

pg_lsclusters дал мне следующий результат:

Ver Cluster Port Status Owner    Data directory               Log file
9.5 main    5432 online postgres /var/lib/postgresql/9.5/main /var/log/postgresql/postgresql-9.5-main.log
9.6 main    5433 online postgres /var/lib/postgresql/9.6/main /var/log/postgresql/postgresql-9.6-main.log

Это означает, что мой ~ / .postgresqlrc должен выглядеть так:

9.6 main *

Что дает мне желаемую версию, когда я запускаю pg_dump -V .

0
ответ дан 3 December 2019 в 01:00

Anọ m na-echekwa otu okwu ahụ. Nke mbu, ewepuru m ụdị pgdump ochie. Ọ kachasị ọ bụ akụkụ nke ndị ahịa. Ya mere, wepu ha site na iji

apt-get wepụ postgresql-client-common

Wụnye ụdị dị ka ihe ị chọrọ, site na imezu iwu ndị a. Ana m eji ubuntu 16.04. Dochie, "xenial" site na mbipute ubuntu gị, na iwu izizi. Iwu ka ịlele ụdị ubuntu-
cat / etc / os-release

$ echo "deb http://apt.postgresql.org/pub/repos/apt/ xenial-pgdg main" > /etc/apt/sources.list.d/pgdg.list=1160328] $ wget --quiet -O - https://www.postgresql.org/media/keys/ACCC4CF8.asc | sudo apt-key tinye -
$ sudo apt-nweta nwelite
$ apt-cache ọchụchọ postgresql | grep postgresql-ahịa
$ apt-get install postgresql-client-9.5

1
ответ дан 3 December 2019 в 01:00

Aghju riesciutu à risolve i mo prublemi disinstallendu u cliente postgresql

sudo apt-get remove postgresql-client-common

E poi reinstallendu

  sudo apt-get install postgresql-client-11
1
ответ дан 3 December 2019 в 01:00

Если вам нужно иметь несколько версий клиента postgresql одновременно можно использовать

pg_dump --cluster 9.2/main [other pg_dump options]

для старого кластера и

pg_dump --cluster 9.3/main [other pg_dump options]

для нового

Подробности см. в принятом ответе на askubuntu: https://askubuntu.com/a/647341/1044581

2
ответ дан 23 March 2020 в 07:15

Теги

Похожие вопросы