Не устанавливается postgresql

Автор LEOLINER, 31 мая 2017, 18:42:43

« назад - далее »

0 Пользователи и 1 гость просматривают эту тему.

LEOLINER

Доброго времени суток уважаемые форумчане. Прошло всего два дня после создания моей первой темы, как опять возник "камень преткновения" в моём деле. Первый вопрос с передачей файлов из Windows в  Linux был решён и необходимый файл был успешно передан. Но прежде чем приступить к установке данного файла, необходимо было установить на Debian 8, репозиторий с postgresql. Естественно прописал в source.list, ссылки на  postgresql, начал установку через интернет и тут вдруг опять спотыкач! Вообщем появляется окно следующего вида:
Вроде как, получается, что postgresq 9.1 уже установлен, но устарел(спрашивается - зачем система его установила. если знала, что есть новая версия?), пожалуйста установите последние обновления postgresq 9.6, но установить из не удаётся. Подскажите, что делать то? А то я в ступоре.

[вложение удалено администратором]

ogost

для начала покажите чего там прописали в sources.list. и да, в репах есть postgresql, левые репы тащить в систему - шанс прострелить себе ногу.

LEOLINER

Всё делал по справочнику, некоторые репозитории я скачивал и установил нормально. А тут получилось, что по инструкции я дал команду, установить: apt-get  install fabric postgresql-9.1 postgresql-contrib-9.1 postgresql-server-dev-9.1. Ну и окно это выскочило. А это скрин листа назначения:



[вложение удалено администратором]

Komorebi

#3
Цитироватьapt-get  install fabric postgresql-9.1 postgresql-contrib-9.1 postgresql-server-dev-9.1
Ты и ставишь версию 9.1. Она была снята с поддержки в прошлом году, о чем тебя, очевидно, и предупредили в сообщении. Система "его установила" потому что ты сам ей сказал установить именно эту версию. Вполне очевидно, что тебе нужна 9.6, т.к. это актуальный релиз. То есть тебе нужно просто заменить в этой команде единички на шестерочки. 9.1 при этом желательно предварительно удалить, хотя скорее всего они удалятся самостоятельно.

Пакеты разделены по версиям самими авторами постгресса. И делается это потому, что твоё ПО может зависеть от версии БД. Иными словами, есть ситуации, когда тебе необходимо поставить именно 9.1. По этой же причине пакет с 9.6 обновится только до следующего релиза 9.6, и когда выйдет 10ка - тебе нужно будет проинсталлировать его  руками.

ogost

В репозиториях есть 9.4. Не вижу смысла прописывать сторонние репы в sources.list и тащить оттуда пакеты.

LEOLINER

Вообщем объясняю, что происходит теперь регулярно: перезагружаю систему и начинаем заново. В терминале вводим apt-get update, появляется ошибка - вы должны вручную выполнить 'sudo dpkg --configure -a'. Вбиваю dpkg --configure -a' , влазят две ошибки: Получено 67,7 kБ за 15с (4 483 Б/c)

E: Не удалось получить доступ к файлу блокировки /var/lib/dpkg/lock - open (11: Ресурс временно недоступен)

E: Не удалось выполнить блокировку управляющего каталога (/var/lib/dpkg/); он уже используется другим процессом?
Если выполнить команду apt-get update
apt-get install fabric postgresql-9.6 postgresql-contrib-9.6 postgresql-server-dev-9.6
Снова две ошибки которые я указал выше.
Подскажите, что твориться? Что за глюки? Что я делаю не так? Я всё делал по справочнику, уже день второй, а воз и ныне там!   



ogost

1. Вероятно установка прошла некорректно. Приведите часть ошибки про dpkg --configure -a полнее, там должна быть подробная информация, какие пакеты биты.
2. От кого вводите указанные вами команды? Они должны исполняться с правами root-а
3. Вероятно прострелили таки ногу, вписав сторонние репы в sources.list

LEOLINER

#7
Только, что сделал новую попытку установки базы данных. Внимание! Появляется снова это окно:

Далее случайно жмакаю на клаве кнопку стрелка вправо и элемент ок, становится активным, enter. Всё установлено!
E: Работа dpkg прервана, вы должны вручную запустить «dpkg --configure -a» для устранения проблемы.
root@debian:/home/leoliner# dpkg --configure -a
Настраивается пакет postgresql-common (182.pgdg80+1) ...
Добавление пользователя postgres в группу ssl-cert

Creating config file /etc/postgresql-common/createcluster.conf with new version

Creating config file /etc/logrotate.d/postgresql-common with new version
Building PostgreSQL dictionaries from installed myspell/hunspell packages...
  en_us
ERROR: no ecoding defined in /usr/share/hunspell/ru_RU.aff, ignoring
Removing obsolete dictionary files:
Настраивается пакет postgresql-9.1 (9.1.24-1.pgdg80+1) ...
Creating new PostgreSQL cluster 9.1/main ...
/usr/lib/postgresql/9.1/bin/initdb -D /var/lib/postgresql/9.1/main -A ident
Файлы, относящиеся к этой СУБД, будут принадлежать пользователю "postgres".
От его имени также будет запускаться процесс сервера.

Кластер баз данных будет инициализирован с локалью ru_RU.UTF-8.
Кодировка БД по умолчанию, выбранная в соответствии с настройками: UTF8.
Выбрана конфигурация текстового поиска по умолчанию "russian".

исправление прав для существующего каталога /var/lib/postgresql/9.1/main... ок
создание подкаталогов... ок
выбирается значение max_connections... 100
выбирается значение shared_buffers... 32MB
создание конфигурационных файлов... ок
создание базы template1 в /var/lib/postgresql/9.1/main/base/1... ок
инициализация pg_authid... ок
инициализация зависимостей... ок
создание системных представлений... ок
загрузка описаний системных объектов... ок
создание правил сортировки... ок
создание преобразований... ок
создание словарей... ок
установка прав для встроенных объектов... ок
создание информационной схемы... ок
загрузка серверного языка PL/pgSQL... ок
очистка базы данных template1... ок
копирование template1 в template0... ок
копирование template1 в postgres... ок

Готово. Теперь вы можете запустить сервер баз данных:

    /usr/lib/postgresql/9.1/bin/postgres -D /var/lib/postgresql/9.1/main
или
    /usr/lib/postgresql/9.1/bin/pg_ctl -D /var/lib/postgresql/9.1/main -l logfile start

Ver Cluster Port Status Owner    Data directory               Log file
9.1 main    5432 down   postgres /var/lib/postgresql/9.1/main /var/log/postgresql/postgresql-9.1-main.log
Настраивается пакет postgresql-server-dev-9.1 (9.1.24-1.pgdg80+1) ...
Настраивается пакет postgresql-contrib-9.1 (9.1.24-1.pgdg80+1) ...


Используем тэги для оформления поста! ogost

ogost

опять таки, этого не случилось бы, если бы вы не вписали сторонние репозитории в sources.list. я про последнюю строчку в вашем sources.list.
я так понимаю, что вопрос решен?

LEOLINER

Да, верно вопрос решён. Оказывается, всё было просто. Сейчас без проблем установил postgresql 9.6, а далее протестирую своё приложение со старой и новой версией  postgresql. А после удалю одну из БД. Всё всем спасибо, тема закрыта. 

Komorebi

Кстати, 9.6 есть еще и в бекпортах. С 9кой придет 9.6 версия нативно.