|
помогите с восстановлением архива postgres из файла с расширением sql | ☑ | ||
---|---|---|---|---|
0
olo_lo1
14.08.18
✎
10:11
|
Проверяю работу этого зверя Postgre SQL:
Саму базу сархивировал через отдельное приложение PostgreSQL Backup выгрузился архивчик, при разархивировании файл sql А как теперь его накатить не пойму открыл консоль psql к postgres пишу команду psql -U postgres -d myDb2 -f D:\arh.sql ничего не происходит. |
|||
1
olo_lo1
14.08.18
✎
10:29
|
ап
|
|||
2
ildary
14.08.18
✎
10:30
|
(0) а если попробовать для распаковки назад тот же самый PostgreSQL Backup?
|
|||
3
Остап Сулейманович
14.08.18
✎
10:32
|
(0) ИМХО sql - это не файл с данными. Это файл запроса. Что бы проверить - посмотри его обычным блокнотом.
|
|||
4
olo_lo1
14.08.18
✎
10:50
|
(3) обрадовали, спасибо.
а для чего тогда PostgreSQL Backup ? (2) он файлы sql не загружает |
|||
5
arsik
гуру
14.08.18
✎
10:54
|
Используй pgdump (https://postgrespro.ru/docs/postgresql/9.6/app-pgdump)
и pgrestore (https://postgrespro.ru/docs/postgresql/9.6/app-pgrestore) |
|||
6
ildary
14.08.18
✎
11:00
|
(4) интересная получается софтина - файл SQL создает и на этом всё?
|
|||
7
Остап Сулейманович
14.08.18
✎
11:02
|
(6) Потом этот файл нужно скормить СУБД и получить результат выполнения. Исполняет запрос именно СУБД. А не сторонняя приблуда.
|
|||
8
Фрэнки
14.08.18
✎
11:05
|
Утилиты для дампа и рестора. Полностью совместимы с родными pg_dump & pg_restore. Freeware.http://microolap.com/products/database/pagodump/
http://microolap.com/products/database/pagorestore/ стащил с сайта Гилева :) |
|||
9
olo_lo1
14.08.18
✎
11:49
|
(7)можете понятнее ответить, я так и не понял. PostgreSQL Backup - удалять на помойку ?
|
|||
10
Владимир Милькин
14.08.18
✎
12:08
|
pg_dump создаёт ту же самую выгрузку в формате sql, которую нужно затем выполнить в базе для восстановления данных.
Нюанс только в том, что выгрузка может быть plain (будет чистый sql) или custom (и похожие форматы), где тот же самый sql жмётся особым образом. pg_restore нужно использовать, если у вас не plain формат. Она тогда разожмёт и уже сама выполнит (например, через psql) восстановление. У вас похоже же plain формат. Поэтому сделайте, например, так: - поставьте себе pgAdmin - создайте чистую базу именно в нём, чтобы там не было никаких дополнительных типов от 1С в Casts - и уже затем в чистой базе через psql выполняйте ваш архив, например, так: psql --single-transaction --echo-errors --quiet --set="ON_ERROR_STOP=on" --file="BACKUP.sql" --dbname=postgresql://"USER":"PASSWORD"@"HOST:PORT"/"temp" где BACKUP.sql полный путь до вашего архива, а temp - имя базы на сервере СУБД. Для создания чистой базы можно обойтись без pgAdmin: createdb --encoding=utf8 --template=template1 --username="USER" --host="HOST" --port=PORT temp |
|||
11
Владимир Милькин
14.08.18
✎
12:09
|
Главное не восстанавливайте сразу в рабочую базу. Перед этим всё на копии, раз в первый раз.
Скорее всего PostgreSQL Backup под капотом тоже использует pg_dump и там могут быть нюансы. Например, если вы указали в нём пользователя СУБД с неполными правами на таблицы базы. Тогда выгрузка может оказаться вообще пустой. |
|||
12
МихаилМ
14.08.18
✎
12:12
|
(11) он 9 месяцев не может разобраться в теме
восстановление бэкапа созданного в PostgreSQL Backup |
|||
13
Владимир Милькин
14.08.18
✎
12:14
|
(0) напиши мне на [email protected], выясним подробности, я объясню и подскажу разные варианты, совсем недавно разбирался с этой темой для себя
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |