我必须将DB从一个服务器迁移到另一个服务器。这两台服务器都使用PostgreSQL 9.6.24。
我使用pg_dump工具以纯文本sql转储我的DB,并使用以下命令:
pg_dump -h myHost -p myPort -U myUser -o myDb > dump.sql
我正在恢复另一台服务器上的转储,使用:
Get-content dump.sql | psql -h myHost -p myPort -U myUser myDb
但是每一个特殊的字符,如法语口音"é“等等,都被问号所取代:老DB 恢复DB
这两个DB都采用UTF8编码。
在使用--encoding=UTF8参数转储时,我试图强制进行编码,但仍然无法使其工作。
我遗漏了什么编码设置吗?
发布于 2022-05-29 00:15:27
我通过从WSL/Ubuntu而不是powershell运行pg_dump来解决这个问题。
sudo apt install postgresql在WSL中安装pg_dump
但是,如果您需要最新的pg_dump版本,请按照下面的说明来代替https://www.postgresql.org/download/linux/ubuntu/
https://stackoverflow.com/questions/71127960
复制相似问题