如何获得有效且完整的PostgreSQL数据库备份和测试
我希望我能就如何确保像使用MS SQL Server一样获得完整的Postgres备份获得明确的答案,然后照顾孤立的用户。 从我所读的文章中(可能是错误的),找到一个好的PostgreSQL博客一直是一项艰巨的挑战,因此请随时向我推荐一些博客,我需要弄清楚该应用程序的工作方式,以便我可以信任自己的备份和Slony复制。我有一个开发人员在选择s时通过custom,directory和tarformat 从PgadminIII还原了我的备份,OID但他说其中两个没有加载,tar但只是目录,而不是数据。我现在真的很困惑。 我正在使用PGAdminIII,它具有pg_dump和pg_dumpall选项。我想备份所有需要测试的东西,以便将该数据库还原到某个地方,并确认是的,我们需要的所有数据和备份都正确。最终我想写一个自动恢复脚本,但一次只写一天。 pg_dumpall显然有一个-globals应该备份所有内容的选项,但是的帮助pg_dumpall显示-g, --globals-only dump only global objects, no databases,而不是--globals选项。 我以为pg_dumpall至少会备份外键,但这似乎还是一个“选项”。根据文档,即使pg_dumpall我需要使用一个-o选项来备份外键,我也无法想象我何时不想备份外键,这作为默认选项会更有意义。 我将如何照顾孤立的用户并确认我拥有一切?我想将备份文件实际还原到另一台服务器上,并验证一切正常。如果有人对如何在PostgreSQL中进行真正的备份并还原提出任何建议,我将不胜感激。 我有一台PostgreSQL服务器,但是我仍然无法理解为什么OID默认情况下该应用程序不会备份s!好像有99.9%的时间需要。 更新1: Postgres 文档中提到globals我正在寻找的选项似乎是此版本的默认选项,但仍需要该-o选项。如果有人可以验证或给我一个示例命令,将所有需要的一切还原到其他地方的单个数据库,我将不胜感激。 编辑:被网站要求通过编辑我的问题来显示此问题的独特性。这个问题引起了问题,并弄清了备份中的OID,全局变量和非全局变量之间的差异,以及测试了还原建议以确保备份良好,而不是仅仅备份。根据答案,我能够备份,找出全局变量/ oid,并使用cron作业每晚在Postgres上开始测试还原过程。谢谢您的帮助!