Postgresql не восстановит дамп

#postgresql #pgadmin-4 #pg-restore

#postgresql #pgadmin-4 #pg-восстановление

Вопрос:

Я пытался восстановить файл дампа dump-postgres-202010121008.sql, но он не будет восстановлен, я пробовал следующие методы восстановления, но, похоже, это бесполезно:

Метод1: использование pgAdmin 4

Я попробовал метод pg_restore со следующими входными данными:

Формат: пользовательский или tar

Имя файла: путь к файлу

Количество заданий: пусто

Имя роли: postgres

Когда я нажимаю восстановить, я получаю Failed(exit code: 1) следующее сообщение об ошибке:

 pg_restore: error: input file does not appear to be a valid archive
  

Я также попробовал Инструмент запроса> открыть файл, но все равно получил сообщение об ошибке File type not supported .

Способ 2: использование командной строки

Я попробовал команду pg_restore на терминале, но она вернулась pg_restore: error: input file does not appear to be a valid archive

Я также попробовал следующие команды:

 su postgres
psql postgres
i dump-postgres-202010121008.sql
  

Однако я получил этот журнал:

 psql:dump-postgres-202010121008:42473: error: invalid command ��08�ӛӣ��X�H6����.�y�:���e�ne��Pc�9x@%"˔U�rV7M=�
psql:dump-postgres-202010121008.sql:42474: error: invalid command �T����kW:����Һ�-kL
psql:dump-postgres-202010121008.sql:42484: error: invalid command M�LJ,�ϐ}�c,J�-�)ATo▒�HJ�� w
psql:dump-postgres-202010121008.sql:783003: ERROR:  invalid byte sequence for encoding "UTF8": 0xea 0xab 0x7a
  

Любая помощь будет признательна, спасибо.

Комментарии:

1. Какая команда сгенерировала дамп?

2. здравствуйте, мне дали этот дамп для тестирования приложения, поэтому я понятия не имею, что это за команда, нужна ли мне команда, которая сгенерировала это немое, чтобы восстановить его?

3. обновление: файл дампа генерируется dbeaver

4. Проблема все та же, DBeaver позволяет вам выбирать между pg_dump и pg_dumpall . Вы также можете изменить любой параметр. Похоже, ваша проблема связана с пользовательским режимом и кодировкой. Но невозможно сказать, не имея файла дампа. Я настоятельно рекомендую вам получить информацию о формате дампа для правильного восстановления и восстановления. Всегда помните, что резервное копирование завершено, когда доказано, что его можно восстановить. Сброс файла — это только первый шаг резервного копирования.

5. Привет @jlandercy, спасибо за ваш ответ. Как вы сказали, проблема была в кодировке файла дампа. При сбросе вы должны настроить кодировку файла дампа, чтобы он соответствовал кодировке вашей базы данных. В моем случае кодировка файла и кодировка базы данных были разными, поэтому при выборе базы данных и восстановлении файла дампа он выдавал ошибку.