Вопрос: Не удается запустить демон Postgres после установки с помощью Yum


Я пытался установить Postgres 9.1.4 на Fedora 17 с помощью Yum. Если я сделаю:

sudo yum install postgres-libs
sudo yum install postgres
sudo yum install postgis

Все установки завершаются успешно (т. Е. Никаких ошибок), но я не могу запустить демон Postgres, используя:

service postgresql initdb

Как официальное руководство по загрузке Postgres говорит, что нужно сделать (http://www.postgresql.org/download/linux/redhat/). Ошибка говорит Unknown operation initdb,

RPM сообщает мне, что он установил psql для /usr/bin/, который я подтвердил. Оказывается, что только несколько компонентов установлены правильно (psql, pg_dump, pg_configure, и некоторые другие), но большинство из них отсутствует (например, pg_ctl а также postgres).

Я пробовал несколько разных конфигураций, и некоторые из моих коллег (с большим опытом работы с Linux, чем я) смотрели на него, но пока ничего не получилось. Два из них также столкнулись с аналогичными проблемами, устанавливая Postgres, используя apt-get на Ubuntu, что заставляет меня думать, что rpm не выполняет свою работу. Кажется, единственное решение - построить его из источника, который в любом случае является более надежным, но, конечно, это занимает больше времени.

Мне интересно, однако, если кто-то еще столкнулся с этой проблемой и / или успешно установил Postgres на Fedora или Ubuntu, используя диспетчер пакетов, такой как yum или apt-get? Разбивается ли rpm?


2
2017-08-22 20:10


Источник


Не забудьте дать кредит, где должен быть кредит, и поднять ответ, если он вам поможет! - Sean the Bean


Ответы:


service postgresql initdb команда не работает, потому что теперь service просто вызывает systemd, и все эти случайные вспомогательные функции исчезли. Как документировано Вот, вам теперь нужно сделать:

sudo postgresql-setup initdb

совершить то же самое.

Остальная часть вашей тайны также проста: вам не хватает postgresql-server пакет.

sudo yum install postgresql-server

И тогда у вас будет /usr/bin/pg_ctl а также /usr/bin/postgres, Бег yum search postgres это полезный способ поиска подсказок, но вы также можете сделать sudo yum install /usr/bin/pg_ctl или аналогичный, и yum выяснит, какой пакет предоставляет отсутствующий файл.


1
2017-09-02 15:21



Благодаря! Я думаю, что это сделало бы трюк, поскольку Yum не установил postgresql-server упаковка автоматически. В конце концов я закончил тем, что Fedora загрузил и установил Arch, и вдруг жизнь стала намного лучше. Pacman отлично справляется с sudo pacman -S postgres, - Sean the Bean