Назад | Перейти на главную страницу

Ошибка установки postgresql с помощью apt-get

Я использую образ AWS Ubuntu.

Пытаясь настроить свою машину, я поигрался с apt-get, чтобы добавить и удалить PostgreSql и некоторые его модули.

Теперь, когда я бегу sudo apt-get install postgresql-9.3 я получаю следующую ошибку:

Setting up postgresql-9.3 (9.3.10-0ubuntu0.14.04) ...
update-alternatives: using /usr/share/postgresql/9.3/man/man1/postmaster.1.gz to provide /usr/share/man/man1/postmaster.1.gz (postmaster.1.gz) in auto mode
 * Starting PostgreSQL 9.3 database server                                                                                                                                                                                                     * Error: could not exec /usr/lib/postgresql/9.3/bin/pg_ctl /usr/lib/postgresql/9.3/bin/pg_ctl start -D /var/lib/postgresql/9.3/main -s -o  -c config_file="/etc/postgresql/9.3/main/postgresql.conf" : No such file or directory

Единственный отсутствующий файл / каталог: /var/lib/postgresql/9.3/main

Я попытался:

  1. Добавление каталога
  2. Удаление postgresql с помощью sudo apt-get remove postgresql-9.3 и снова установил

Ошибка все еще возникает.

Что я делаю не так? Как я могу это исправить?

Насколько я понимаю, вы удалили кластер при удалении, и он не создается автоматически.

Воссоздание кластера должно решить проблему:

mkdir /var/lib/postgresql/9.3/main
chown postgres /var/lib/postgresql/9.3/main
su postgres
/usr/lib/postgresql/9.3/bin/pg_ctl -D /var/lib/postgresql/9.3/main initdb

Возможно, вам потребуется заменить Postgres с учетной записью пользователя базы данных, которая используется в ubuntu.

Ознакомьтесь с руководством postgres для получения дополнительной информации: http://www.postgresql.org/docs/current/static/creating-cluster.html