使用python tarfile备份postgresql数据目录。期望/忽略什么错误

| 我正在编写一个python脚本,用于自动备份PostgreSQL数据目录,以启用“连续归档和时间点恢复”。 我想使用Python的tarfile库创建档案。 复杂的是,数据文件可以在备份期间更改。引用PostgreSQL手册:   一些文件系统备份工具发出   警告或错误,如果文件   正在尝试复制更改,而   复制收益。当基地   活动数据库的备份,这   情况正常,不是错误。   但是,您需要确保自己   可以区分对此的抱怨   从实际错误中排序。      ...一些   GNU tar版本返回错误   致命代码无法区分   如果文件在被截断时出错   tar正在复制它。幸运的是,GNU   tar版本1.16和更高版本退出   如果在更改过程中更改了文件,则为1   备份和2个其他错误。 从数据目录复制文件时,在Python中应该期待哪些例外?以及如何确定错误是否严重?     
已邀请:
        如果您使用的是“ 0”模块,则此方法的实现基本上取决于您。 GNU tar在处理文件之前和之后检查文件大小和ctime,并抱怨它们是否不同。这不是一个实际的错误,只是tar觉得应该提到的东西。但是,在您的用例中,您并不在意这一点,因此您可以将其忘记。
tarfile
模块肯定不会自己抱怨。 至于其他例外,可能性是无限的。在这种情况下,Python抛出的几乎任何东西都可能是致命的。     
        PostgreSQL文档中介绍了持续归档。它已实现,无需创建其他脚本-但是您将拥有许多文件。 24.3.2。进行基本备份-按照说明进行操作,您可以创建tar,数据文件不会更改。 24.3.1。设置WAL归档-在这里您必须归档新的WAL文件,它们也不会改变,但是它们是单独的文件。 我认为将WAL文件添加到基本备份是不安全的。如果在将文件添加到基本备份时服务器崩溃,则它可能已损坏。     

要回复问题请先登录注册