postgres неверная последовательность байтов для кодировки UTF8

моя исходная база данных имеет кодировку SQL_ASCII, а моя будущая база данных - с UTF8, которая находится на другом сервере.

ну... я экспортирую с помощью этой команды:

pg_dump -v -E UTF8 -Fc -h x.x.x.x old-database-name -U username > backup.dmp

и попробуй импортировать с этим

pg_restore --single-transaction -v -Fc -d new-database-name -U username <  backup.dmp

но я столкнулся с этой ошибкой:

pg_restore: [arquivador (bd)] Erro ao PROCESSAR TOC: pg_restore: [arquivador (bd)] Erro no registro do TOC 722; 1255 4594720 ФУНКЦИЯ Каким бы ни было (переменный символ) имя пользователя pg_restore: [arquivador (bd)] не удалось выполнить запрос: ОШИБКА: последовательность байтов недействительна для кодирования "UTF8": 0xe1 0x72 0x69

если я сбрасываю и восстанавливаю без параметра -E, работает хорошо, но моя новая база данных имеет проблемы с персонажами


person Helio Ferreira    schedule 18.05.2016    source источник


Ответы (1)


ну... мне пришлось сбросить как обычный текст и удалить недопустимые символы с помощью этой команды в Linux:

iconv -c -f UTF-8 -t UTF-8 <backup.sql >backup-cleaned.sql
person Helio Ferreira    schedule 18.05.2016