我在Linux上安装了远程Postgres DB版本10.8。我正在尝试使用postgres 9.6.12在Windows机器上备份它
pg_dump --host dahost --port 5432 --username "postgres" --no-password --format tar --blobs --verbose --file "path\noury.backup" "highlands_wastewater"
我得到这些错误
pg_dump: server version: 10.8 (Ubuntu 10.8-0ubuntu0.18.04.1); pg_dump version: 9.6.12
pg_dump: aborting because of server version mismatch
如何远程备份该数据库?
答案 0 :(得分:0)
如错误消息所述,您不能将旧版本的pg_dump
与更新的PostgreSQL版本一起使用。
其背后的原因是PostgreSQL 9.6无法知道如何正确转储v10数据库-较新版本中可能包含新功能(例如分区表)。
您必须在Windows计算机上安装PostgreSQL v10或更高版本(如果您希望能够将转储还原到原始数据库,则为v10)。
请勿使用tar
格式。 custom
格式具有更多优势。