我找到了这篇文章http://www.howtogeek.com/135533/how-to-use-rsync-to-backup-your-data-on-linux/但它看起来过时了,我觉得我可以在 AsuUbuntu 上得到更好的答案:)
我有一台运行 ubuntu 12.04 的服务器,我的笔记本电脑装有 12.10,现在我想每天备份服务器上的 postgres 数据库,我该怎么做?
答案1
第一的,不只需 rsync 一个数据库,或者任何其他正在被主动写入的内容。您可能会得到一个不可用的副本。对于大多数数据库、邮件假脱机……几乎任何“实时”数据都是如此。这就是您测试备份的原因!
PostgreSQL 有一个关于备份还原,这将是一个很好的起点。
对于基本用途,每晚pg_dump
备份通常就足够了。如果您需要更多备份,请考虑运行热备用、使用 PgBarman 进行 WAL 归档等。
你实际上能rsync PostgreSQL 数据库只要:
- 你
pg_start_backup()
先跑 - 除了 rsync 之外,没有其他内容写入目标
- 之后运行
pg_stop_backup()
*并从中复制所需的存档文件pg_xlog
。
因为需要复制档案,所以通常最好与 WAL 归档结合使用。
从基本转储开始pg_dump
:
pg_dumpall --globals-only
;加pg_dump -Fc
对于每个数据库
如果您需要更多信息,我已经为您提供了一些信息,告诉您在哪里可以找到最适合您需求的内容。