На serverA у меня есть база данных postgresql с пользователем user_a. Сделал дамп:
pg_dump postgres > db1.bak
На serverB у меня есть база данных с пользователем user_b. Я пытался восстановить базу данных из дампа, сделанного на serverA, и это не удалось:
psql my_db < db1.bak
psql: FATAL: role "user_b" does not exist
Мне действительно нужно создавать user_a на serverB? Я хочу избежать этого, потому что на serverB я хочу иметь только user_b.
Есть ли этому решение?
Я бы использовал обычное имя пользователя для роли резервного копирования.
Представьте, если у вас когда-нибудь появится serverC ...
Вы можете создать user_a только для импорта, выполнить импорт, изменить владельца импортированной базы данных на user_b, а затем удалить user_a.