Создать новый локальный сервер в pgadmin?

У меня на Windows установлены PostgreSQL 11 и PGadmin 4. В настоящее время я подключен к серверу AWS, на котором размещены все мои данные.

Я хочу создать локальный сервер (localhost) в качестве тестовой среды, где я могу экспериментировать. Однако я не могу этого сделать, и другие подобные вопросы в стеке не помогают. Вот каков мой процесс:

  1. в pgAdmin щелкните правой кнопкой мыши "Серверы" и выберите "Создать> Сервер".

  2. Во всплывающем окне «Create - Server» я ввожу Name: Localserver. Для «подключения» я набираю localhost. Порт, который я оставляю по умолчанию '5432', db: postgres, username: postgres password: empty

  3. нажмите "Сохранить".

однако я получаю сообщение об ошибке:

Невозможно подключиться к серверу:

не удалось подключиться к серверу: в соединении отказано (0x0000274D / 10061) Сервер работает на хосте «localhost» (:: 1) и принимает соединения TCP / IP на порту 5432?

не удалось подключиться к серверу: соединение отклонено (0x0000274D / 10061). Сервер работает на хосте «localhost» (127.0.0.1) и принимает соединения TCP / IP через порт 5432?

снимок экрана с сообщением об ошибке

Что я должен делать? Я администратор, если это имеет значение.


person Theo F    schedule 12.11.2018    source источник


Ответы (4)


Вероятно, это одна из двух вещей.

  1. Вы настроили сервер Postgres, но не изменили listen_addresses в файле postgresql.conf, или

  2. Вы не настроили сервер Postgres на своем локальном компьютере. ("Создать сервер" немного вводит в заблуждение, вероятно, это должно быть "Создать соединение с сервером".)

person Chris Curvey    schedule 12.11.2018
comment
ах хорошо спасибо за ваш ответ. Вы можете мне посоветовать, что делать в каждом конкретном случае? 1. У меня нет postgresql.conf. У меня есть postgres.conf.sample 2. Возможно, но я не уверен, как это настроить. Я думал, что он был настроен автоматически при установке PostgreSQL ... - person Theo F; 13.11.2018
comment
Конечно, рад помочь. На какой ОС вы работаете? - person Chris Curvey; 13.11.2018
comment
@Chirs Curvey В итоге я удалил pgadmin, postgresql, а затем снова установил его, но при этом создал локальный сервер. ПОСЛЕ этого я подключился к своим базам данных AWS. - person Theo F; 16.11.2018
comment
@ChrisCurvey Я все еще хотел бы знать, как это сделать в Windows. - person ColinMac; 19.01.2020
comment
Вы можете взглянуть на dba.stackexchange.com/questions/140258/ - person N M Almeida; 18.03.2020

Как новый пользователь Postgres, я не понимал, как использовать Postgres в Ubuntu. Так что я просто собираюсь вмешаться и помочь другим новичкам, которые, возможно, не могут понять, как работать с Postgres в Linux. Если вы используете Windows, действия должны быть аналогичными.

Прежде чем вы перейдете к использованию PgAdmin, необходимо немного настроить. Сначала большинство из них будет происходить в вашем терминале.

Откройте терминал с помощью Ctrl + Alt + T, если вы работаете на ПК. Или просто нажмите ALT + F1 и начните вводить Терминал.

Давайте сначала начнем с основ и убедимся, что вы правильно установили.

1. Установка последней версии Postgres

1.1 обновите системные пакеты программного обеспечения

sudo apt update

1.2 установите последнюю версию PostgreSQL из репозиториев Ubuntu по умолчанию

sudo apt install postgresql

установщик создаст новую коллекцию баз данных PostgreSQL, которой будет управлять один экземпляр сервера.

Каталог данных по умолчанию: /var/lib/postgresql/your-version/main

Файлы конфигурации: /etc/postgresql/your-version/main

2. Проверка, установлена ​​ли служба Postgres.

2.1. Проверьте, активен ли Postgres

sudo systemctl is-active postgresql

Вы должны увидеть: активно

2.2 Проверьте, включен ли Postgres

sudo systemctl is-enabled postgresql

Вы должны увидеть: включено

2.3. Проверьте статус службы Postgres

sudo systemctl status postgresql

Вы должны увидеть: активен (завершен), отмечен зеленым

2.4. Проверьте, готов ли Postgres принимать соединения

sudo pg_isready

Вы должны увидеть: / var / run / postgresql: 5432 - прием соединений

3. Настройка аутентификации Postgres

3.1 Открытие pg_hba.conf от имени СУПЕРПОЛЬЗОВАТЕЛЯ

sudo code --user-data-dir=~/root /etc/postgresql/13/main/pg_hba.conf

Я использую код Visual Studio, поэтому для меня код - это кодовое имя vsc. Если вы используете vim или sublime, просто замените код своим именем текстового редактора.

3.2 Настройка pg_hba.conf

Примечания: вам не нужно здесь ничего менять, просто убедитесь, что ваши файлы конфигурации соответствуют следующим строкам:

host    all             all             127.0.0.1/32            md5
# IPv6 local connections:
host    all             all             ::1/128                 md5

Нажмите "Сохранить" и закройте.

3.3 Перезапустите службу Postgres

sudo systemctl restart postgresql

4. Создайте НОВЫЙ сервер.

Для меня в этом было все мое замешательство. Прежде чем использовать PgAdmin, вам необходимо создать сервер в своем терминале, затем вы можете подключиться и управлять им с помощью PgAdmin, как и с PhpMyAdmin. На самом деле это проще.

4.1 Доступ к оболочке базы данных PostgreSQL

sudo su - postgres
psql

Вы увидите это: postgres=#

4.2 Создание нового сервера и пользователя

postgres=# create user bob with superuser password 'admin';

Вот как вы создаете нового пользователя и сервер в Postgres. Перейдем к PgAdmin.

5. Установка pgAdmin4

5.1 Добавьте открытый ключ для репозитория

curl https://www.pgadmin.org/static/packages_pgadmin_org.pub | sudo apt-key add

Примечания: если у вас нет curl, ваш Ubuntu выдаст вам команду для его установки.

5.2 создайте файл конфигурации репозитория

sudo sh -c 'echo "deb https://ftp.postgresql.org/pub/pgadmin/pgadmin4/apt/$(lsb_release -cs) pgadmin4 main" > /etc/apt/sources.list.d/pgadmin4.list && apt update'

5.3 установить pgAdmin4

sudo apt update
sudo apt install pgadmin4

5.4 запустите сценарий веб-настройки, установленный с двоичным пакетом pgadmin4

sudo /usr/pgadmin4/bin/setup-web.sh

Он попросит вас ввести адрес электронной почты и пароль. Этот адрес электронной почты и пароль необходимы для входа в веб-интерфейс PgAdmin4.

6. Доступ к веб-интерфейсу pgAdmin4

6.1 Откройте свой любимый браузер

введите адрес веб-интерфейса PgAdmin. Обычно это выглядит так

http://127.0.0.1/pgadmin4

Примечание. После установки сценарий веб-настройки сообщит вам, где именно получить доступ к веб-интерфейсу.

Когда вы увидите экран входа в систему, введите адрес электронной почты и пароль, которые вы выбрали во время сценария веб-настройки.

6.2 Добавление нового подключения к серверу

6.2.1 Нажмите Добавить новый сервер.

6.2.2 На вкладке Общие введите имя вашего сервера. ЛЮБОЕ имя, которое вы хотите, не имеет значения. Вы можете ввести PgServer1 или что угодно. Больше ничего не меняй.

6.2.3 Перейдите на вкладку "Подключение"

Hostname/ Address : localhost
Port : 5432
Maintenance database : postgres (always)
Username :  **bob** (the username youve chosen at 4.2)
Password : admin (or any password you chose at 4.2)

Нажмите "Сохранить".

Вуаля! Вы должны успешно подключиться. Если нет, просто откройте терминал и создайте нового пользователя, как мы это делали в 4.2.

Примечания: создавать базы данных очень просто, просто щелкните правой кнопкой мыши имя вашего сервера.

create > databases

Полезные ресурсы и руководства

Основы PostgreSQL: запросы и т.п.

PostgreSQL и JSON: полезно для работы с приложениями JS

PostgreSQL и Nodejs: создавайте приложения в реальном времени с помощью nodejs и socket.io

Другие узлы PostgreSQL

person Grogu    schedule 05.03.2021
comment
Отличный учебник, спасибо! знак равно - person Osmar I. Cancino; 09.05.2021

Обычно ошибка «соединение отклонено» указывает на то, что сервер базы данных либо 1) не работает, либо 2) настроен таким образом, что он не прослушивает правильный порт или IP-адрес. Обязательно проверьте ps -ef, чтобы увидеть, запущен ли Postgres, а также посмотрите postgresql.conf, чтобы увидеть, правильно ли установлены port и listen_addresses.

person richyen    schedule 25.09.2019

убедитесь, что служба postgres запущена.
пример в Linux: systemctl enable postgresql.service

person Rakshit Kaundal    schedule 15.02.2021
comment
Привет, Ракшит, если служба postgres запущена, шаги, предпринятые OP, не должны работать ни с чем другим? - person WurmD; 15.02.2021