我们需要将 PostgreSQL 数据库备份发送给 CRM 开发人员。我们发送给他们并得到反馈,备份无法“解压缩”,因为存档已损坏。
备份脚本片段如下所示:
pg_dump -c -O -U postgres $x -h localhost -p 5432 --disable-dollar-quoting -i | gzip > $BACKUPDIR/$DT-$x.gz
我们检查了备份过程,我们认为备份系统没有任何问题。
顺便提一句。他们使用 7Zip 解压缩。
问题:您建议我对 CRM 开发团队说什么......可能是什么问题?
顺便提一句。事实上,到目前为止,我们还没有进行任何恢复测试,我知道出于安全原因必须这样做。
问题 2 我们发现 Linux 服务器上的所有内容都已正确备份。当我们将它们复制到 SMB 资源并进入 Windows 站时,即使 7zip 也能正确解压它们。
我们发现问题在于将它们发送到本地 FTP 服务器。我们通过这个 BASH 脚本发送这些文件:
#!/bin/sh
echo FTP file: $1 UPLOAD START
#pwd
ftp -n 192.168.1.205 <<END_SCRIPT
quote user userslogin
quote pass userspassw
cd /Backup
pwd
put $1
quit
quit
END_SCRIPT
exit 0
有人可以说如何改进/修复我们的 FTP bash 脚本吗?
您应该告诉他们您生成转储的方式,因为这有点不寻常。一个明显的问题可能是他们尝试了一个不理解 GNU zip 的解压程序。
我建议使用自定义格式:
可以用 恢复
pg_restore
,并自动压缩。