Las versiones anteriores de PostgreSQL no eran tan estrictas en el cumplimiento de UTF-8 como las versiones más nuevas. Presumiblemente, está intentando restaurar datos que contienen UTF-8 no válido de una versión anterior a una versión más nueva.
Las cadenas no válidas deben limpiarse. Puede seguir ese procedimiento para cada tabla que no se importó debido a estos errores:
-
Extraiga el contenido de la tabla del archivo de volcado en un archivo de texto sin formato SQL:
pg_restore --table=tablename --data-only dumpfile >plaintext.sql
-
Elimine los caracteres no válidos en un editor de texto o automáticamente con
iconv
:iconv -c -f UTF-8 -t UTF-8 <plaintext.sql >plaintext-cleaned.sql
-
Importar los datos desinfectados:
psql dbname < plaintext-cleaned.sql