gpt4 book ai didi

linux - 有谁知道备份 postgres 数据库的好方法?

转载 作者:IT王子 更新时间:2023-10-29 00:22:43 24 4
gpt4 key购买 nike

我有一个脚本可以为 mysql 生成每日轮换备份,但我找不到与 postgres 类似的东西。我还发现它具有在线备份功能,这应该会派上用场,因为这是一个生产站点。

有没有人知道可以帮助我的程序/脚本,或者有什么方法可以帮助我?

谢谢。

最佳答案

一种方法是use pg_dump 生成平面 sql 转储,您可以对其进行 gzip 压缩或其他操作。这当然是最简单的选择,因为结果可以通过管道返回到 psql 以重新加载数据库,并且由于它也可以导出为纯文本,因此您可以先查看或编辑数据必要时恢复。

下一个方法是暂时关闭你的数据库(或者如果你的文件系统支持原子快照,理论上可能有效)和backup你的 PostgreSQL data 目录。

This PostgreSQL 站点的页面还解释了如何进行在线备份和时间点恢复,这绝对是最难配置的方法,但也是最佳方法。这个想法是您通过运行一些特殊的 SQL(pg_start_backuppg_stop_backup)来执行基本备份(您可能每天、几天或一周都这样做)并制作一个(文件系统级)数据库目录的副本。这段时间数据库没有下线,一切照常。从那时起,数据库生成任何更改的预写日志 (WAL),然后可以将其推送(由数据库自动)到您想要的任何位置。要恢复,您需要进行基础备份,将其加载到另一个数据库实例中,然后重放所有 WAL 文件。这样,您还可以通过不重播所有日志来进行时间点恢复。

关于linux - 有谁知道备份 postgres 数据库的好方法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1221282/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com