将 postgresSQL 数据库的内容通过管道传输到压缩的 tar 文件中,然后复制到另一台机器的最有效、最安全的方法是什么?
这将用于 localhosting 开发,或备份到远程服务器,在两端使用基于 *nix 的机器。
这个页面有一个完整的网络服务器备份脚本,包括 pg_dump 输出。
这是它使用的语法:
BACKUP="/backup/$NOW"
PFILE="$(hostname).$(date +'%T').pg.sql.gz"
PGSQLUSER="vivek"
PGDUMP="/usr/bin/pg_dump"
$PGDUMP -x -D -U${PGSQLUSER} | $GZIP -c > ${BACKUP}/${PFILE}
gzip 压缩后,您可以根据您的网络和服务,使用scp、rsync或nfs将其传输到另一台服务器。
pg_dump 确实是正确的解决方案。请务必阅读手册页。在 Espo 的示例中,一些选项是有问题的(-x 和 -D)并且可能不适合您。
与其他所有数据库操作一样,进行大量测试!