Недавно я обновился до Natty (Ubuntu 11.04), и теперь мой postgresql, похоже, не подключается.
Я использую pgadmin3, который вызывает следующую ошибку:
не удалось подключиться к серверу: в соединении отказано. Сервер работает на хосте "localhost" и принимает соединения TCP / IP на порту 5432? не удалось подключиться к серверу: в соединении отказано. Сервер работает на хосте "localhost" и принимает соединения TCP / IP на порту 5432?
набор текста psql
на терминале выдает следующую ошибку:
psql: невозможно подключиться к серверу: нет такого файла или каталога. Сервер работает локально и принимает соединения через сокет домена Unix "/var/run/postgresql/.s.PGSQL.5432"?
Ниже приведены файлы в var/run/postgresql/
total 8
drwxrwsr-x 2 postgres postgres 100 2011-05-15 14:35 .
drwxr-xr-x 19 root root 720 2011-05-15 14:35 ..
-rw------- 1 postgres postgres 5 2011-05-15 14:35 8.4-main.pid
srwxrwxrwx 1 postgres postgres 0 2011-05-15 14:35 .s.PGSQL.5433
-rw------- 1 postgres postgres 34 2011-05-15 14:35 .s.PGSQL.5433.lock
netstat показывает
sudo netstat -lp | grep postgresql
unix 2 [ ACC ] STREAM LISTENING 7763 1025/postgres /var/run/postgresql/.s.PGSQL.5433
Я считаю, что проблема в том, что он хочет начать 5432
но это должно начаться в 5433
но как мне это изменить ??
Я только что обновил PostgreSQL и столкнулся с той же проблемой. Проблема заключалась в том, что мой новый сервер postgres с запущенной версией (9.1) был установлен параллельно с моим старым сервером с запущенной версией (8.4). Я предполагаю, что конфигурация по умолчанию - работать на альтернативном порту (5433).
Поэтому моим решением было убедиться, что новый сервер работает на 5432.
Так что отредактируйте конфигурацию postgres
sudo -u postgres gedit /etc/postgresql/9.1/main/postgresql.conf
Убедитесь, что это порт 5432:
port = 5432
И перезапустите сервер postgres, выполнив:
sudo -u postgres /etc/init.d/postgresql restart
Непроверенной альтернативой было бы сначала удалить старый сервер postgres перед установкой новой версии.
Порт по умолчанию для Postgres - 5432. Поэтому все инструменты (pgadmin3, psql) по умолчанию будут использовать этот порт, если вы не укажете иное.
У вас Pg работает на порте 5433. Поэтому для подключения к любому инструменту вам придется вручную указать номер порта. На pgadmin3 это текстовое поле где-то в графическом интерфейсе подключения (если я правильно помню). psql принимает --port
вариант следующим образом:
psql --port 5433 [database]