Skip to content

Ошибка ERROR: Restore destination is not empty #574

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Closed
Mogaba opened this issue Nov 23, 2022 · 3 comments
Closed

Ошибка ERROR: Restore destination is not empty #574

Mogaba opened this issue Nov 23, 2022 · 3 comments

Comments

@Mogaba
Copy link

Mogaba commented Nov 23, 2022

Изучаю pg_probackup, пробую бэкапить/восстановить базу по документации:
https://postgrespro.github.io/pg_probackup/

Делаю бэкап командой:
pg_probackup-12 backup -B /opt/pgbackup --instance sber -b FULL --stream --temp-slot -U pgbackup -d sber

Все проходит успешно, далее пытаюсь восстановить:
pg_probackup-12 restore -B /opt/pgbackup --instance sber -i RLSY9Y

Выводится ошибка:
ERROR: Restore destination is not empty: "/var/lib/postgresql/12/main"

Удаляю все из каталога "/var/lib/postgresql/12/main", после этого такая ошибка:

ERROR: Cannot open restore target file "/var/lib/postgresql/12/main/PG_VERSION": Permission denied
ERROR: Backup files restoring failed. Transfered bytes: 104kB, time elapsed: 0

Подскажите, пожалуйста, новичку, в чем проблема.
ОС: Ubuntu 20.04
PostgreSQL: 12

@Mogaba Mogaba changed the title Ошибка Ошибка ERROR: Restore destination is not empty Nov 23, 2022
@daniel-95
Copy link
Contributor

Добрый день.
Если у вас запущен постгрес, то перед восстановлением остановите его. Также вам нужны права на директорию /var/lib/postgresql/12/main, с правами может быть проблема, если вы запустили постгрес с sudo

@Mogaba
Copy link
Author

Mogaba commented Nov 23, 2022

Спасибо, действительно, не было прав на запись в "/var/lib/postgresql/12/main".
А можете подсказать, под каким пользователем желательно запускать восстановление: под тем же, который делал бэкап или под системным postgres? Или это не важно?

@daniel-95
Copy link
Contributor

Вообще, конечно, не важно, но на практике обычно из соображений безопасности (не только для бекапирования, а вообще для самых разных задач) создают пользователей с необходимыми для работы правами, и не более того. В идеале - бекапить и восстанавливать одним и тем же пользователем.

@Mogaba Mogaba closed this as completed Nov 24, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants