postgresql - 如何将纯 SQL 文件转换为压缩的 pgdump 文件?

标签 postgresql pg-dump

我有一个相当大的普通 SQL 文件 (>70GB),需要通过慢速连接将其发送到服务器。有没有办法将其转换为二进制 pgdump 文件而不在本地恢复整个数据库?

这基本上是这个问题的颠倒:How do I convert a binary pgdump (compressed) to a plain SQL file?

最佳答案

您应该对其进行压缩以进行传输,但不需要使用 postgres 压缩。您可以使用 rsync 来实现此目的,例如:

rsync -avz dump.sql user@server:/path/dump.sql

将通过压缩传输转储。要减小大小,您可以使用:

rsync -avz --compress-level=9 dump.sql user@server:/path/dump.sql

您还可以使用压缩程序(例如 gzipbzip)压缩转储,传输它,然后在不解压的情况下读取它。

gunzip dump.sql.gz | pg_restore -Upostgres 

关于postgresql - 如何将纯 SQL 文件转换为压缩的 pgdump 文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48845074/

相关文章:

PostgreSQL:如何获得包含结束日期的日期范围?

postgresql - 如何修复 pg_dump : aborting because of server version mismatch

postgresql - 哪种 pgdump 格式最适合小存储和快速恢复?

postgresql - 创建约束触发器时出错

postgresql - psql 和 pg_dump 版本不匹配

postgresql - Redmine postgresql fatal error : Ident authentication failed for user "redmine"

ruby-on-rails - <% if current_user.id == @status.user_id %> 当用户未登录时

ruby-on-rails - 列必须出现在 GROUP BY 子句中或用于聚合函数 Ruby

postgresql - 恢复仅数据的 postesql 转储?

ruby-on-rails - rails/Postgres : Column must appear in group by clause