Postgresql Ошибка в среде Ubuntu. с сообщением об ошибке - "socket" /var/run/postgresql/.s.PGSQL.5432 "? - PullRequest
0 голосов
/ 08 марта 2020

Однажды мой Postgresql сервер перестал работать. Проверил журнал. Это было как-то отключено.

root@ip_address:/# tail /var/log/postgresql/postgresql-10-main.log
2020-02-19 06:47:49.215 CET [23497] LOG:  received smart shutdown request
2020-02-19 06:47:49.477 CET [23497] LOG:  worker process: logical replication launcher (PID 23512) exited with exit code 1
2020-02-19 06:47:49.482 CET [23507] LOG:  shutting down
2020-02-19 06:47:49.546 CET [23497] LOG:  database system is shut down

При запуске

root@ip_address:/# psql
psql: could not connect to server: No such file or directory
    Is the server running locally and accepting
    connections on Unix domain socket "/var/run/postgresql/.s.PGSQL.5432"?

Жаловалось, что нет файлов и каталогов. поэтому я проверил, работает ли мой postgresql.

root@ip_address:/# systemctl status postgresql
● postgresql.service - PostgreSQL RDBMS
   Loaded: loaded (/lib/systemd/system/postgresql.service; enabled; vendor preset: enabled)
   Active: active (exited) since Sun 2020-03-08 16:19:24 CET; 26min ago
  Process: 30136 ExecStart=/bin/true (code=exited, status=0/SUCCESS)
 Main PID: 30136 (code=exited, status=0/SUCCESS)

Mar 08 16:19:24 vps584959 systemd[1]: Starting PostgreSQL RDBMS...
Mar 08 16:19:24 vps584959 systemd[1]: Started PostgreSQL RDBMS.

Он работал. но, если я проверю postgresql кластер.

root@ip_address:/# pg_lsclusters
Ver Cluster Port Status Owner    Data directory              Log file
10  main    5432 down   postgres /var/lib/postgresql/10/main /var/log/postgresql/postgresql-10-main.log

Это было ВНИЗ

, поэтому я попытался

root@ip_address:/# pg_ctlcluster 10 main start
 Error: Config owner (deploy:1003) and data owner (postgres:114) do not match, and config owner is not root

Я не был в состоянии заставить это работать. потом я попробовал.

sudo chown -R deploy:postgres /var/lib/postgresql/10/ && sudo chmod -R u=rwX,go= /var/lib/postgresql/10/

попробуйте еще раз.

root@ip_address:/# pg_ctlcluster 10 main start
Job for postgresql@10-main.service failed because the service did not take the steps required by its unit configuration.
See "systemctl status postgresql@10-main.service" and "journalctl -xe" for details.
root@ip_address:/# systemctl status postgresql@10-main.service
● postgresql@10-main.service - PostgreSQL Cluster 10-main
   Loaded: loaded (/lib/systemd/system/postgresql@.service; indirect; vendor preset: enabled)
   Active: failed (Result: protocol) since Sun 2020-03-08 16:59:53 CET; 2min 52s ago
  Process: 31635 ExecStart=/usr/bin/pg_ctlcluster --skip-systemctl-redirect 10-main start (code=exited, status=1/FAILURE)
 Main PID: 23497 (code=exited, status=0/SUCCESS)

Mar 08 16:59:53 vps584959 systemd[1]: Starting PostgreSQL Cluster 10-main...
Mar 08 16:59:53 vps584959 postgresql@10-main[31635]: Error: /usr/lib/postgresql/10/bin/pg_ctl /usr/lib/postgresql/10/bin/pg_ctl start -D /var/lib/postgresql/10/main -l /var/log/postgre
Mar 08 16:59:53 vps584959 systemd[1]: postgresql@10-main.service: Can't open PID file /var/run/postgresql/10-main.pid (yet?) after start: No such file or directory
Mar 08 16:59:53 vps584959 systemd[1]: postgresql@10-main.service: Failed with result 'protocol'.
Mar 08 16:59:53 vps584959 systemd[1]: Failed to start PostgreSQL Cluster 10-main.

Не знаю, что делать дальше. У кого-нибудь была такая же проблема?

Больше информации.

root@ip_address:/var/run/postgresql# ls
total 0
drwxrwsr-x  3 postgres postgres   60 Feb 19 06:47 .
drwxr-xr-x 28 root     root     1060 Mar  8 13:58 ..
drwxr-s---  2 postgres postgres   40 Feb 19 06:47 10-main.pg_stat_tmp

1 Ответ

0 голосов
/ 09 марта 2020
pg_ctlcluster 10 main start
Error: Config owner (deploy:1003) and data owner (postgres:114) do not match, and config owner is not root

Это довольно ясно, не так ли?

Скрипт запуска Ubuntu PostgreSQL хочет, чтобы postgresql.conf и / или pg_hba.conf принадлежали пользователю postgres, иначе он отказывается продолжить.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...