Ubuntu 18.04.3
PostgreSQL 11,6 (Ubuntu 11.6-1.pgdg18.04 + 1) на x86_64-p c - linux - gnu, скомпилировано g cc
За последний месяц я обновлял, удалял и изменял данные из базы данных, называемой «портфолио», используя Postgres и моего собственного пользовательского пользователя.
Недавно я перезагрузил систему, и теперь Postgres говорит, что пользователь и база данных больше не существуют.
Проверка пользователей:
postgres=# \du
List of roles
Role name | Attributes | Member of
-----------+------------------------------------------------------------+-----------
postgres | Superuser, Create role, Create DB, Replication, Bypass RLS | {}
systemctl:
postgresql.service loaded active exited PostgreSQL RDBMS
● postgresql@10-main.service loaded failed failed PostgreSQL Cluster 10-main
postgresql@11-main.service loaded active running PostgreSQL Cluster 11-main
postgresql .conf: data_directory = '/var/lib/postgresql/11/main'
Я пытался остановить postgresql11 и запустить postgresql10, но безрезультатно. На данный момент я подозреваю, что я использовал какую-то временную базу данных, и она удалила все, когда система shuhtdown? Я точно следовал учебному пособию, чтобы настроить postgres и запустить его, поэтому я не думал, что возможно даже иметь временные базы данных или пользователей.
Я перепробовал все и не могу найти какую-либо документацию по эта проблема .. Я собираюсь отправить мою голову через стену, если я не могу найти эти данные.
РЕШЕНИЕ:
Я попытался еще раз остановка @ 11-main и запуск @ 10-main. На этот раз это сработало, и я вижу свою базу данных и весь ее современный контент. Я понял это, проверив каталог базы данных, зайдя в /base
и увидев, в каком из них было более 3 (по умолчанию) каталогов. Каждый каталог является базой данных. У Postgresql@11-main было 3 каталога, а у @ 10-main - 4, что указывало на мои файлы, где они были.
Затем я запустил sudo systemctl stop postgresql@11-main
sudo systemctl start postgresql@10-main
и все заработало.