TimescaleDB 托管服务数据库会自动备份,每日进行完整备份,并持续记录预写日志 (WAL)。所有备份都已加密。
TimescaleDB 托管服务使用 pghoard
(一个 PostgreSQL 备份守护程序和恢复工具)将备份数据存储在云对象存储中。存储的备份数量和备份保留时间取决于服务计划。
重要提示
逻辑备份的大小可能与 Web 控制台上显示的 TimescaleDB 托管服务备份的大小不同。在某些情况下,差异很大。TimescaleDB 托管服务 Web 控制台中显示的备份大小是每日备份的大小,在加密和压缩之前。要查看每个数据库的大小,包括索引占用的空间,您可以使用 psql 提示符下的 \l+
命令。
两种类型的备份是二进制备份和逻辑备份。完整备份是特定于版本的二进制备份,当与 WAL 结合使用时,可以一致地恢复到时间点 (PITR)。您可以使用 pg_dump
命令创建逻辑备份。
此表列出了备份索引、事务和数据时二进制备份和逻辑备份之间的差异
类型 | 二进制 | 逻辑 |
---|---|---|
索引 | 包含来自索引的所有数据 | 不包含索引数据,仅包含用于从其他数据重新创建索引的查询 |
事务 | 包含未提交的事务 | 不包含未提交的事务 |
数据 | 包含尚未被 PostgreSQL VACUUM 进程清理的已删除和更新的行,以及所有数据库,包括模板 | 不包含任何已删除的数据,并且根据给定的选项,输出可能会被压缩 |
TimescaleDB 托管服务提供时间点恢复 (PITR)。要从备份恢复您的服务,请单击您的服务的“备份”选项卡中的“恢复”按钮。备份由 TimescaleDB 托管服务自动进行,并根据您的计划类型保留几天。
计划类型 | 备份保留期限 |
---|---|
开发版 | 1 天 |
基础版 | 2 天 |
专业版 | 3 天 |
您可以使用 pg_dump
手动创建备份。pg_dump
命令允许您创建可以直接在其他地方恢复的备份(如果需要)。
命令 pg_dump
的典型参数包括
pg_dump '<SERVICE_URL_FROM_PORTAL>' -f '<TARGET_FILE/DIR>' -j '<NUMBER_OF_JOBS>' -F '<BACKUP_FORMAT>'
pg_dump
命令也可以针对其中一个备用节点运行。例如,使用此命令以目录格式创建备份,使用两个并发作业。结果存储在名为 backup
的目录中
pg_dump 'postgres://tsdbadmin:password@mypg-myproject.a.timescaledb.io:26882/defaultdb?sslmode=require' -f backup -j 2 -F directory
您可以将所有备份文件放入单个 tar 文件并上传到 Amazon S3。例如
export BACKUP_NAME=backup-date -I.tartar -cf $BACKUP_NAME backup/s3cmd put $BACKUP_NAME s3://pg-backups/$BACKUP_NAME
关键词
在此页面上发现问题?报告问题 或 在 GitHub 中编辑此页面。