Что я делаю неправильно при восстановлении бэкапа Psq?

Как можно исправить следующую проблему при восстановлении базы данных PostgreSQL из бэкапа: «database "postgres" is being accessed by other users» и «database "postgres" already exists»?
  • 11 апреля 2024 г. 10:19
Ответы на вопрос 2
Проблема заключается в том, что база данных "postgres" уже существует и к ней в данный момент обращаются другие пользователи, поэтому вы не можете восстановить бэкап на нее. Есть несколько способов решения этой проблемы:

1. Остановите все процессы, обращающиеся к базе данных "postgres". Для этого выполните команду `SELECT pg_terminate_backend(pid) FROM pg_stat_activity WHERE datname='postgres';`, где `pid` - идентификатор процесса.
2. Удалите существующую базу данных "postgres" с помощью команды `DROP DATABASE postgres;`.
3. Затем восстановите базу данных из бэкапа.

После выполнения этих шагов вы сможете успешно восстановить базу данных PostgreSQL из бэкапа.
Значит есть открытая сессия с этой БД. Закрой ее (например, pg_terminate_backend() ) и повтори заново
Похожие вопросы