Как включить удаленное соединение, чтобы использовать PostgreSQL? - PullRequest
0 голосов
/ 28 октября 2019

У меня есть два виртуальных компьютера на Azure, назовем их test1 и test2.

postgresql-сервер установлен и работает на test1 (сервер, на котором находится пользователь postgres), но я хочучтобы иметь возможность использовать psql на test2 (target).

До сих пор я редактировал pg_hba.conf, чтобы в его списке хостов был указан IP-адрес цели:


# TYPE  DATABASE        USER            ADDRESS                 METHOD

# "local" is for Unix domain socket connections only
local   all             all                                     trust
# IPv4 local connections:
host    all             all             127.0.0.1/32            trust
host    all             all             XX.XXX.XX.XXX/32        trust

Где XX.XXX.XX.XXX - публичный IP-адрес моей целевой машины, test2 .

Затем я отредактировал файл postgresql.conf, чтобыпрослушивать все адреса, а не только localhost:

listen_addresses = '*'          # what IP address(es) to listen on;
                                        # comma-separated list of addresses;
                                        # defaults to 'localhost'; use '*' for all
                                        # (change requires restart)
port = 5432 

Я перезагружаю сервер на компьютере хост-сервера, чтобы получить изменения:

pg_ctl -D /path/to/data/ -l logfile reload

Насколько я исследовал, сейчасЯ должен быть в состоянии быть на test2 и просто запустить что-то вроде:

psql -h 127.0.0.1 -U postgres -p 5432

Но всякий раз, когда я делаю, я получаю:

-bash: psql: command not found

Что происходит ??? Кроме того, тестовое соединение с базой данных Hive (уже установлено) продолжает сбой, так как не может подключиться к базе данных.

1 Ответ

0 голосов
/ 28 октября 2019

Как прокомментировал Ислингр:

Установка postgresql на цель (test2) позволила мне запустить:

psql -h test1ip -p 5432

Это сработало.

...