DBX

定时数据库备份

定时数据库备份使用 DBX 的数据库导出引擎,为 MySQL 和 PostgreSQL 连接生成 SQL 文件。它适合开发、测试和中小型数据库的周期性逻辑备份,并提供表范围、保留数量、运行历史和手动执行。

定时备份当前仅支持 DBX 桌面端,并要求应用保持运行。它不是数据库服务器上的独立调度器,也不能替代物理备份、Point-in-Time Recovery、WAL/binlog 归档或云厂商备份服务。

支持范围

项目当前行为
数据库MySQL、PostgreSQL
平台DBX 桌面端
输出每个数据库/Schema 对应的 .sql 文件
频率每隔若干小时、每天指定时间、每周指定星期和时间
内容表结构、表数据、数据库对象、可选 DROP TABLE IF EXISTS
表范围全部、按模式包含、按模式排除
保留按计划保留最近若干次成功备份文件

创建计划

打开备份设置

在设置中进入数据库备份页面,创建新的备份计划。

选择连接和数据库

选择 MySQL 或 PostgreSQL 连接。可以备份所有非系统数据库,也可以选择指定数据库。

配置表范围

选择全部表、只包含匹配模式的表,或排除匹配模式的表。模式支持 *?,并可以匹配 schema.tabledatabase.schema.table

设置目录与频率

选择本机目标目录,并设置每小时、每天或每周计划。界面会预览下次运行时间。

选择内容和保留数量

选择结构、数据、对象和 DROP TABLE IF EXISTS,然后设置要保留的历史备份数量。

保存并验证

保存后先点击立即运行,确认连接权限、表范围、目标目录和生成文件都符合预期,再启用计划。

表匹配模式

表模式可以使用逗号、分号或换行分隔。例如:

public.*
audit_*
orders_202?
  • 包含只导出匹配表
  • 排除导出其他表并跳过匹配表
  • PostgreSQL 名称按大小写区分
  • MySQL 会结合 lower_case_table_names 判断匹配是否区分大小写

如果没有任何表匹配包含规则,运行会失败,不会生成空的成功备份。

一致性与执行方式

每次备份会在数据库会话中建立一致性快照,再按数据库/Schema 运行导出。完成后回滚只读快照事务,不提交业务修改。

备份任务会显示在统一导出任务区,并提供:

  • 当前数据库和对象
  • 成功、失败或取消状态
  • 手动或计划触发来源
  • 生成文件列表
  • 错误信息和运行时间

取消只会停止后续导出。失败或取消时,DBX 会尽量删除本次已经生成的部分文件,避免把不完整结果误当成成功备份。

保留与历史

每个计划可以设置保留数量。超过数量的旧运行会从历史中清理,并删除相应文件。也可以手动删除某次备份记录和文件。

目标目录仍应纳入操作系统、NAS 或对象存储的独立备份。单机同盘保存无法防止磁盘损坏、勒索软件或整机丢失。

恢复演练

生成的 .sql 文件可以通过 SQL 文件执行 导入。建议定期在隔离环境验证:

  • 文件可以完整读取和执行
  • 表结构、索引、对象和数据量符合预期
  • 字符集、时区、序列/自增值和权限需要的额外步骤
  • 应用可以连接恢复后的数据库

备份成功只代表文件生成完成,不代表已经验证可恢复。

选择定时备份还是数据库导出

功能适合场景
数据库导出一次性迁移、变更前备份、手动选择当前范围
定时数据库备份固定连接和范围的周期性逻辑备份
数据库原生备份大型生产库、PITR、增量/物理备份、高可用与合规要求

安全建议

  • 使用只具备备份所需读取权限的数据库账号
  • 目标目录按敏感数据级别控制权限和加密
  • 不要把包含业务数据的 SQL 文件提交到公开仓库
  • 计划中数据库或表改名后,重新检查范围
  • DBX 桌面端未运行、电脑休眠或目标目录不可用时,计划不会像服务器调度器一样可靠执行