小编典典

将 PostgreSQL 数据库复制到另一台服务器

all

我正在寻找将生产 PostgreSQL 数据库复制到开发服务器。最快、最简单的方法是什么?


阅读 106

收藏
2022-03-08

共1个答案

小编典典

您不需要创建中间文件。你可以做

pg_dump -C -h localhost -U localuser dbname | psql -h remotehost -U remoteuser dbname

要么

pg_dump -C -h remotehost -U remoteuser dbname | psql -h localhost -U localuser dbname

使用psqlpg_dump连接到远程主机。

对于大型数据库或慢速连接,转储文件和传输压缩文件可能会更快。

正如 Kornel 所说,没有必要转储到中间文件,如果你想压缩工作,你可以使用压缩隧道

pg_dump -C dbname | bzip2 | ssh  remoteuser@remotehost "bunzip2 | psql dbname"

要么

pg_dump -C dbname | ssh -C remoteuser@remotehost "psql dbname"

但是这个解决方案还需要在两端都获得一个会话。

注意: pg_dump用于备份和psql恢复。因此, 此答案中的第一个命令是从本地复制到远程,第二个命令是从远程复制到本地 。更多->
https://www.postgresql.org/docs/9.6/app-
pgdump.html

2022-03-08