
# 备份原理
#### 什么是数据库备份
RDS for PostgreSQL会在数据库实例的备份时段中创建数据库实例的自动备份。系统根据您指定的备份保留期（1\~3660天）保存数据库实例的自动备份。
每次备份完成后都会生成一个备份文件，当数据库故障或数据损坏时，可以通过备份文件恢复数据库，从而保证数据可靠性。
备份期间需要读取数据库文件，占用磁盘读IO，且备份数据经压缩后上传，会消耗单核CPU资源最大占用，建议根据业务情况，选择在业务低峰期进行备份。
**在华为云标准环境下全量备份恢复的性能规格为2TB数据在8小时以内完成全量备份或全量恢复。**
**UNLOGGED属性的表（无日志表）不记录WAL日志，不支持备份和恢复功能。**
#### 备份类型
RDS for PostgreSQL包含多种备份类型，不同备份类型的概念介绍以及功能差异，请参见[备份类型](https://support.huaweicloud.com/usermanual-rds-pg/rds_pg_10_0034.html)。
#### 备份触发过程
- 单机实例 采用单个数据库节点部署架构。与主流的主备实例相比，它只包含一个节点，但具有高性价比。备份触发后，从主库备份数据并以压缩包的形式存储在对象存储服务上，不会占用实例的磁盘空间。
  
- 主备实例 采用一主一备的经典高可用架构，主备实例的每个节点的规格保持一致。备份触发后，从主库备份数据并以压缩包的形式存储在对象存储服务上，不会占用实例的磁盘空间。
  当数据库或表被恶意或误删除，虽然RDS支持HA高可用，但备机数据库会被同步删除且无法还原。因此，数据被删除后只能依赖于实例的备份保障数据安全。
  
 
#### 备份机制
RDS for PostgreSQL默认开启自动备份，且不支持关闭。RDS for PostgreSQL自动全备按照备份策略中的备份时间段和备份周期进行全量备份。增量备份为实例每5分钟对上一次自动全备，或增量备份后更新的数据会进行备份，以保证数据库可靠性。实例恢复到指定时间点，会从OBS备份空间中选择一个该时间点最近的全量备份下载到实例上进行全量恢复，再重放增量备份到指定时间点。
图1备份原理   
![](https://support.huaweicloud.com/usermanual-rds-pg/zh-cn_image_0000002213661404.png "点击放大")
#### 备份存储位置和备份费用
备份都是以压缩包的形式存储在对象存储服务上。
未开启CBR备份的计费规则：备份文件上传OBS会占用备份空间，当已使用备份空间超过赠送空间后，超过的部分就会按使用量收取费用。具体收费规则请参见[RDS for PostgreSQL的备份是如何收费的](https://support.huaweicloud.com/rds-pg_faq/rds_faq_0074.html)。
开启CBR备份后，CBR快照备份的计费规则如下：
- 2025年9月之前产生的快照备份：不享受备份赠送空间，根据CBR的收费规则中的"数据库服务器备份存储库"按需计费，详见[云备份是如何计费的](https://support.huaweicloud.com/price-cbr/cbr_07_0026.html)。
- 2025年9月及以后产生的快照备份：享受快照备份赠送空间，根据RDS的备份空间计费信息中的"CBR快照备份"按需计费，详见[RDS价格详情](https://www.huaweicloud.com/pricing.html?tab=detail#/rds)。
 
#### 备份清理
备份文件清理分为两种场景：手动备份清理和自动备份清理。
- 手动备份是由用户触发产生的全量备份，需要用户手动删除，否则会一直保存。
- 自动备份的备份文件不支持手动删除，可通过[设置自动备份策略](https://support.huaweicloud.com/usermanual-rds-pg/rds_09_0027.html)调整备份保留天数，超出备份保留天数的已有备份文件会被自动删除。
 
