跳到正文

备份与恢复 ​

打开服务的 备份与恢复 标签页。

数据库 ​

对于 PostgreSQL 和兼容 MySQL 的服务,备份会在运行中的容器内执行 pg_dump 或 mysqldump,并保存导出的内容。你可以下载它,或者恢复到这个服务或其他服务。恢复会在运行中的数据库上执行 SQL,如果中途失败,可能只应用了一部分。

上传备份 ​

上传 接受:

  • 来自 pg_dump、pg_dumpall 或 mysqldump 的 SQL,原始或 gzip 压缩格式(.sql、.sql.gz);
  • Zeabur 的数据库备份(Zeabur 下载的 .zip,即使它被命名为 .sql.gz);
  • 用于数据卷的未压缩 .tar。

上传的文件会在保存时转换。PostgreSQL 的集群导出(pg_dumpall,Zeabur 的 PostgreSQL 备份就是这种)会被转换为:把其中唯一的应用数据库恢复到这个服务的数据库中:

  • 角色 如果不存在会被创建,密码取自备份。如果旧平台的凭据可能已经泄露,请修改它们。
  • 备份中的超级用户角色(Zeabur 的 root)恢复后没有超级用户权限,也不能登录,所以旧的管理员密码在这里永远不会成为管理员登录。它们拥有的对象保持原来的所有者。
  • 跳过 template1 和 postgres 数据库,源数据库上的设置和授权会应用到这个服务的数据库上。
  • 包含多个应用数据库的备份会被拒绝;请把每个数据库分别恢复到各自的服务中。

在写入任何内容之前,恢复会检查两件事,任何一项不满足都会停止并给出提示:

  • 服务的 PostgreSQL 主版本不能低于备份的版本。PostgreSQL 18 的备份需要 PostgreSQL 18 的服务。
  • 数据库中不能有表。集群导出会创建表,但不会删除已有的表,所以请恢复到一个新的数据库服务中。

数据卷 ​

数据卷备份是数据卷的 .tar 归档。备份或恢复期间项目必须处于停止状态,并且恢复需要一个空的数据卷。

异地备份 ​

你创建的每个备份、每个自动备份和每个上传的文件,都会另外复制一份到另一个地点的对象存储中。复制完成后,备份上会出现 已异地备份 标记;在此之前显示 异地备份中,通常需要一两分钟。

副本在离开控制面之前就已加密,所以存储服务商无法读取你的数据。如果控制面丢失了备份文件,恢复或下载时会先取回副本,并在使用前校验它的 SHA-256。删除备份、备份自动过期或删除项目时,副本也会一起删除。

你的责任 ​

备份保存在 Zenavo 的控制面上,与你的服务器分开,并有一份异地副本。备份在你把它恢复到某处并核对数据之前,都不算经过验证。对于重要数据,请同时保留自己的副本,例如服务商的磁盘快照或下载的备份。

与 Zeabur 无关联。