增量备份
xtrabackup 和 innobackupex 工具都支持增量备份,这意味着它们可以仅复制自上次备份以来发生更改的数据。
您可以在每次完整备份之间执行多次增量备份,因此您可以这样设置备份过程,例如每周一次完整备份和每天增量备份,或者每天完整备份和每小时增量备份。
增量备份的工作原理是每个 InnoDB 页都包含日志序列号既 LSN。 LSN 是整个数据库的系统版本号。每个页的 LSN 显示了它最近的变化。
增量备份复制那些 LSN 比之前增量备份或完全备份的 LSN
更新的所有页面。有两种算法用于查找要复制的这类页面的集合。第一种算法可用于所有服务器类型和版本,它通过读取所有数据页直接检查页面
LSN。 第二种方法适用于 Percona Server 它启用服务器上更改页面跟踪功能,该功能会在页面被更改时记录下来。这些信息将被写入一个紧凑的单独的所谓的位图文件中。
xtrabackup
二进制文件将使用该文件只读取增量备份所需的数据页面,这潜在地节省了很多读取请求。如果xtrabackup
程序找到了位图文件,则默认启用后一种算法。即使位图数据可用,也可以指定xtrabackup --incremental-force-scan
来读取所有页面。