Postgres 从 .dump 文件恢复:编码字节序列无效 "UTF8"

Postgres restore from .dump file: Invalid byte sequence for encoding "UTF8"

我已经使用

下载了我的 heroku 数据库的最新副本
$ curl -o latest.dump `heroku pg:backups public-url --app myapp`

这会在我的本地计算机上生成一个具有以下类型的文件:

$ file db/latest.dump
    db/latest.dump: PostgreSQL custom database dump - v1.12-0

我正在尝试使用 psql 将其导入我的本地 Postgres 数据库 (my_db)。但是,我遇到了很多错误:

$ psql my_db < db/latest.dump
    ...
    psql:db/latest.dump:119425: invalid command \?A~??ܣb?{#?+????LS??
    psql:db/latest.dump:119426: invalid command \D%!ѡ/F??g????A???dC????|2?M?$?8GTJ??c?E?;??֛Sh??S?[NP?f?2?+H?W????k
    ... [thousands of lines]
    psql:db/latest.dump:261719: ERROR:  invalid byte sequence for encoding "UTF8": 0xba

命令 psql -f db/latest.dump my_db 以同样的方式失败。

要将此文件本地导入具有相同架构等的新数据库,需要做什么?

我能够使用pg_restore解决问题:

pg_restore --verbose --clean --no-acl --no-owner -h localhost -U myuser -d my_db db/latest.dump