作者自称“PostgreSQL数据库恢复专家”,指出该领域缺乏方法论和商业激励,多数工具仅展示功能而不重准确性和可靠性。他开发了PDU工具,已开源前两项功能,保留核心的碎片扫描和无数据字典恢复技术,并欢迎同行交流切磋。
PostgreSQL数据库无法启动且无备份时,非常规恢复面临挑战:数据文件虽在但结构依赖数据字典,而字典可能损坏或含删除列、TOAST表等复杂情况。恢复需重建结构并处理异常,工程上要兼顾效率与可验证性。统一方法处理结构、数据和异常,使恢复过程稳定、可审查,而非依赖运气。
本文提供了通过GitHub Actions自动恢复AWS RDS PostgreSQL数据库的步骤指南,旨在实现生产数据库与开发环境的同步。内容包括备份创建、AWS IAM角色和策略配置,以及GitHub工作流设置以执行数据库恢复。
2025年4月4日,Andrew Dunstan 提交补丁,使 pg_dumpall 支持非文本模式,新增 -F/--format 选项,默认为纯文本格式。其他格式将创建包含 globals.data 和 map.dat 的目录,增强数据库恢复灵活性。同时,pg_restore 也新增选项,允许仅恢复全局设置或排除特定数据库,显著提升了性能和灵活性。
文章介绍了一种用于PostgreSQL的脚本,通过扫描数据库表中自给定时间戳后的更改,生成增量备份的SQL语句。核心功能是generate_sql_statements函数,输入表名数组和时间戳,生成INSERT或UPDATE语句,帮助恢复数据库状态。
AWS RDS是一种平台即服务(PaaS)提供的服务,可以轻松将数据库恢复到特定的时间点。通过选择“维护和备份”选项卡,用户可以查看备份详细信息,通过选择“自动备份”页面,可以获取更多信息。要恢复到某个时间点,用户需要选择“操作”下拉菜单并提供日期和时间。PostgreSQL会为恢复创建一个新实例,用户可以配置实例设置、存储、连接、身份验证和标签。在“附加设置”中提供数据库名称是恢复创建数据库所必需的。点击恢复按钮后,实例将被创建,数据库将被恢复。这个过程简单且可以自动化。
本文介绍了Kubernetes操作员在Kubernetes环境中设置、配置和管理复杂应用程序的功能,以Percona Operator for MySQL为例,演示了数据库备份和恢复的步骤。通过安装kubectl工具和Kubernetes环境,部署Percona XtraDB Cluster Operator,连接到Percona XtraDB Cluster实例,添加示例数据,执行逻辑备份和数据库恢复,展示了使用Kubernetes Operators自动化数据库操作的优势。
该文章介绍了数据库恢复方式,包括备份集恢复和任意时间点恢复。对于单机MySQL,可以使用XtraBackup工具对备份集进行恢复。对于分布式数据库PolarDB-X,提出了基于两次心跳事务的恢复方案。该方案通过裁剪binlog来实现全局一致的任意时间点恢复。文章还对不同恢复方案进行了比较,并提出了解决元数据和数据文件一致性恢复的优化方案。
Percona Backup for MongoDB (PBM)引入了并行下载功能,以加快数据库恢复速度。物理恢复方法比逻辑方法快五倍,已经实现了文件分块下载,但新的并行下载功能允许同时下载多个块,提高了恢复速度。测试表明,AWS S3上的恢复速度提高了19倍。
本文介绍了如何使用PostgreSQL的故障转移和故障恢复来设置服务器复制,包括故障转移和故障恢复的定义、恢复数据库的步骤和常见问题的解决方法。
最近,Point-in-Time恢复(PITR)功能已向更多项目开放,用户可通过新仪表板轻松启用。该功能允许数据库在特定时间点恢复,以避免数据丢失。启用PITR需满足“小型”计算附加组件,并考虑恢复点目标(RPO)。默认备份保留期为7天,可延长至28天。
完成下面两步后,将自动完成登录并继续当前操作。