Я хочу настроить PostgreSQL на Compute Engine, но при попытке изменить pg_hba.conf
автор sudo nano ../../etc/postgresql/9.3/main/pg_hba.conf
и я вставляю # удаленные подключения IPv4 для учебника: разместить все все [YOUR_IPV4_ADDRESS] / 32 md5
с IP-адресом моего локального компьютера и нажмите Control + x
, затем данные не сохранены
Я попытался выполнить шаги, описанные в руководстве сообщества Как настроил PostgreSQL на Compute Engine и не обнаружил проблем. Имейте в виду, что некоторые версии программного обеспечения, упомянутые в этом руководстве, устарели и должны быть заменены на поддерживаемые, и, как следствие, пути к файлам также должны быть обновлены.
Пожалуйста, посмотрите на мои шаги ниже:
Создайте экземпляр виртуальной машины (поскольку Ubuntu 14.04 из руководства устарела, я заменил ее на Ubuntu 18.04 LTS).
Вычислительные экземпляры $ gcloud создают экземпляр-1 --zone=europe-west3-a --machine-type=e2-medium --image=ubuntu-1804-bionic-v20200701 --image-project=ubuntu-os- облако
Создано [https://www.googleapis.com/compute/v1/projects/test-prj/zones/europe-west3-a/instances/instance-1].
НАЗВАНИЕ ЗОНА MACHINE_TYPE PREEMPTIBLE INTERNAL_IP EXTERNAL_IP STATUS
instance-1 europe-west3-a e2-medium 10.156.15.192 35.246.XXX.YYY РАБОТАЕТ
Установите PostgreSQL и используйте PSQL для завершения настройки:
$ sudo apt update
$ sudo подходящее обновление
$ sudo apt установить postgresql postgresql-client postgresql-contrib
$ sudo -u postgres psql postgres
psql (10.12 (Ubuntu 10.12-0ubuntu0.18.04.1))
Введите "помощь" для помощи.
postgres=# \пароль postgres
Введите новый пароль:
Введите его снова:
postgres=# СОЗДАТЬ РАСШИРЕНИЕ adminpack;
СОЗДАТЬ РАСШИРЕНИЕ
постгрес=# \q
$
Постгрес SQL 9.3 был заменен на 10.12.
Настроить удаленный доступ к PostgreSQL:
3.1. отредактируйте pg_hba.conf
:
/etc/postgresql/10/main/pg_hba.conf
(путь к файлу был изменен из-за более новой версии):
$ sudo nano /etc/postgresql/10/main/pg_hba.conf
# Удаленные подключения IPv4 для руководства:
хост все все [ВАШ_IPV4_АДРЕС]/32 md5
# Удаленные подключения IPv4 для руководства:
хост все все 89.64.XXX.YYY/32 md5
$ sudo cat /etc/postgresql/10/main/pg_hba.conf
...
# Административный вход в базу данных через сокет домена Unix
локальный все одноранговые узлы postgres
# ТИП БАЗЫ ДАННЫХ АДРЕС ПОЛЬЗОВАТЕЛЯ МЕТОД
# "local" только для соединений сокетов домена Unix
локальные все все одноранговые
# Локальные соединения IPv4:
хост все все 127.0.0.1/32 md5
# Локальные соединения IPv6:
хост все все ::1/128 md5
# Разрешить подключения репликации с локального хоста пользователем с
# привилегия репликации.
локальная репликация всех одноранговых узлов
репликация узла все 127.0.0.1/32 md5
репликация хоста все ::1/128 md5
# Удаленные подключения IPv4 для учебника:
хост все все 89.64.XXX.YYY/32 md5
3.2. отредактируйте postgresql.conf
/etc/postgresql/10/main/postgresql.conf
(путь к файлу был изменен из-за более новой версии):
$ sudo nano /etc/postgresql/10/main/postgresql.конф
#listen_addresses = 'localhost'
;#
, чтобы раскомментировать строку;localhost
с *
(настройка '*' позволяет Postgres прослушивать все IP-адреса);$ перезапуск службы sudo postgresql
$ статус службы sudo postgresql
● postgresql.service — СУБД PostgreSQL.
Загружено: загружено (/lib/systemd/system/postgresql.service; включено; предустановка поставщика: включена)
Активен: активен (закрыт) со вт 14.07.2020 09:57:07 UTC; 6 с назад
Процесс: 7452 ExecStart=/bin/true (code=exited, status=0/SUCCESS)
Основной PID: 7452 (код=выход, статус=0/УСПЕХ)
14 июля, 09:57:07 instance-1 systemd[1]: запуск СУБД PostgreSQL...
14 июля, 09:57:07 instance-1 systemd[1]: запущена СУБД PostgreSQL.