Гость
Форумы / PostgreSQL [игнор отключен] [закрыт для гостей] / PostgreSQL удаляет базу при восстановлении / 6 сообщений из 6, страница 1 из 1
16.01.2020, 12:37
    #39914758
ewgenik
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
PostgreSQL удаляет базу при восстановлении
Необходимо под Linux сделать бэкап базы (testsrc) и восстановить его в соседнюю базу (testdst) на этом-же сервере.

Бэкап:
Код: sql
1.
pg_dump --host=localhost testsrc --username=postgres -Fc —file=testsrc.bkp


Восстановление:
Код: sql
1.
2.
3.
dropdb --host 127.0.0.1 --port 5432 --username "postgres" "testdst" --if-exists
createdb --host 127.0.0.1 --port 5432 --username "postgres" "testdst"
pg_restore --host 127.0.0.1 --port 5432 --username "postgres" --dbname "testdst" --clean "testsrc.bkp"


Проблема: при восстановлении удаляется исходная база (testsrc). PostgreSQL 9.2.1-eter8ubuntu.

Подскажите, почему может удаляться исходная база?

PS. Вариант безупречно работает на нескольких серверах PostgreSQL 9.4.2.
...
Рейтинг: 0 / 0
16.01.2020, 12:53
    #39914773
vyegorov
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
PostgreSQL удаляет базу при восстановлении
ewgenik

Восстановление:
Код: sql
1.
2.
dropdb --host 127.0.0.1 --port 5432 --username "postgres" "testdst" --if-exists
…


Проблема: при восстановлении удаляется исходная база (testsrc). PostgreSQL 9.2.1-eter8ubuntu.

Подскажите, почему может удаляться исходная база?
Потому, что dropdb удаляет базу, для этого и сделана.
...
Рейтинг: 0 / 0
16.01.2020, 13:46
    #39914792
Sergej Grischenkow
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
PostgreSQL удаляет базу при восстановлении
vyegorov,

Да, но не testsrc.

@ewgenik
Посмотри что находится в файле testsrc.bkp (pg_dump без -Fc)

P.S.
Я запускаю pg_dump без параметра -Fc но с параметром --clean
Редактирую руками testsrc.bkp
и восстанавливаю с помощью psql -A -q -t .......
...
Рейтинг: 0 / 0
16.01.2020, 19:07
    #39914987
ewgenik
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
PostgreSQL удаляет базу при восстановлении
Sergej Grischenkow,

Благодарю! Как крайний вариант, возможно, так и сделал бы.

Все решилось проще, убрал --clean из pg_restore - все заработало как нужно.
Нужно было внимательнее доки читать.
...
Рейтинг: 0 / 0
17.01.2020, 12:13
    #39915347
Павел Лузанов
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
PostgreSQL удаляет базу при восстановлении
ewgenik,

Поскольку у вас восстановление в только что созданную БД, то указание --clean в pg_resotore действительно лишнее.

Тем не менее.
pg_restore удаляет и сразу создает БД только одновременно с двумя ключами: --clean --create (сокращенно -c -C).
А --clean без --create предварительно удаляет объекты внутри БД, но саму БД не трогает.
...
Рейтинг: 0 / 0
17.01.2020, 18:30
    #39915623
vyegorov
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
PostgreSQL удаляет базу при восстановлении
ewgenik,

Под “удаляется база” вы имеете в виду удаление объектов в базе, или же удаление самой базы?
Согласно доке комбинация `--clean -d target` должна удалить объекты в базе `target`. Может тут имеет место быть баг в 9.2?..

В целом использовать 9.2 не надо, совсем. И сильно думать об апгрейде 9.4.
...
Рейтинг: 0 / 0
Форумы / PostgreSQL [игнор отключен] [закрыт для гостей] / PostgreSQL удаляет базу при восстановлении / 6 сообщений из 6, страница 1 из 1
Целевая тема:
Создать новую тему:
Автор:
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]