用于Windows的PostgreSQL备份软件

用于Windows的PostgreSQL备份软件,postgresql,backup,database-backups,Postgresql,Backup,Database Backups,我想询问是否有任何Windows软件可以在特定时间安排PostgreSQL备份 我们在不同的位置维护多台服务器,因此我想知道是否有任何简单的方法可以远程安排PostgreSQL数据库备份,因为数据库加载时会有某些高峰时间,我想将其安排在晚上,这样就不会发生麻烦。我建议您退房。我不为他们工作,但这是一个了不起的跨平台工具 它救了我几次,还有什么?它可以帮助我处理数据库ER图。我让postgres备份在Windows Server 2008 R2上运行了一段时间,回到我的环境中。有一个相关的问题 我

我想询问是否有任何Windows软件可以在特定时间安排PostgreSQL备份

我们在不同的位置维护多台服务器,因此我想知道是否有任何简单的方法可以远程安排PostgreSQL数据库备份,因为数据库加载时会有某些高峰时间,我想将其安排在晚上,这样就不会发生麻烦。

我建议您退房。我不为他们工作,但这是一个了不起的跨平台工具


它救了我几次,还有什么?它可以帮助我处理数据库ER图。

我让postgres备份在Windows Server 2008 R2上运行了一段时间,回到我的环境中。有一个相关的问题

我还没有看到一个Windows软件可以进行PG备份。我编写了一堆DOS批处理文件,并将它们与Windows任务调度器结合起来。这是一项相当复杂的努力


除非您可以关闭PG实例,否则备份Postgres并不像拍摄“数据”目录的快照那么简单。我建议开始的方法是全面阅读和理解PostgreSQL 9管理手册(Simon Riggs和Hannu Krosing)的第11章。

似乎wiki.PostgreSQL.org上有一个很好的页面记录了你需要做的事情。如果此文档不足以满足您的需要,我建议您增强原始发布。

Areca Backup、Bacula(如果您有用于备份存储的Linux服务器)或50万商业备份“解决方案”等工具几乎都可以用于备份PostgreSQL

逻辑备份 让现有备份管理产品负责保留、轮换和计划。您应该做的是提供一个备份前脚本以插入备份产品。此脚本将运行
pg\u dumpall--globals only
,并为每个数据库运行
pg\u dump-Fc…
,以将数据库内容保存到转储目录。这是通常的过程。那就倒回去。在备份后脚本中,删除转储输出,因为它现在将存档在备份管理工具的存档中

我从未见过没有前置和后置挂钩的备份管理产品

物理备份 您可以对物理备份使用类似的策略,而不仅仅是上述逻辑备份。一般流程同样记录在文件中。由于需要复制在
pg\u stop\u backup()
之后生成的WAL,因此将其集成到备份管理器非常复杂。大概是这样的:

  • 确保已启用WAL存档,并且运行备份的主机可以读取存档目录
  • 在预备份挂钩中,连接到数据库并运行
    pg\u start\u backup()
  • 让必须支持卷影复制服务复制的备份产品复制数据目录,包括
    pg_xlog
    、所有表空间等
  • 在备份后挂钩中,运行
    pg\u stop\u backup()
  • 定义在主数据库备份之后运行的另一个备份文件集。此文件集必须将所有存档的WAL备份到备份标签中的某一点。否则将导致无法恢复备份

如果物理备份看起来太复杂,请坚持使用逻辑备份转储(
pg_dump
pg_dumpall
,等等),并使用流式复制/PITR+
pg_basebackup
)进行物理备份。

我说的是备份计划备份,如果有Windows用户热衷于提供资金,或者自愿完成这项工作,PgBarman应该不太难为Windows测试和打包。实际上,您可以使用任何使用卷影复制快照服务的工具来复制目录以备份Pg,只要您先
Pg\u start\u backup()
,然后
Pg\u stop\u backup()
,只要您启用了WAL存档。不过,大多数人都需要逻辑备份。我刚刚遇到HandyBackup,它声称可以备份Postgres,尽管我没有使用过它,也不能推荐它。哇,他们的网站有误导性,他们试图让人觉得你需要他们的产品来做热备份,而且转储是不安全的。没有印象。