Isso é exatamente o problema que Encoding::FixLatin foi escrito para resolver*.
Se você instalar o módulo Perl, também obterá o
fix_latin
utilitário de linha de comando que você pode usar assim:pg_restore -O dump_file | fix_latin | psql -d database
Leia as 'Limitações ' da documentação para entender como ele funciona.
[*] Observe que estou assumindo que quando você diz ISO-8859-x você quer dizer ISO-8859-1 e quando você diz CP125x você quer dizer CP1252 - porque a mistura de ASCII, UTF-8, Latin-1 e WinLatin-1 é um caso comum. Mas se você realmente tem uma mistura de codificações orientais e ocidentais, desculpe, mas você está ferrado :-(