1.3.1备份文件类型

下表显示了单个文件备份映像或目录备份中包含的不同类型的文件。在单文件备份的情况下,将该文件解压缩到提取或者是image-to-backup-dir命令查看文件。

表1.1备份中的文件类型

文件名、模式或扩展名

与原始数据文件的关系

笔记

ibdata *

InnoDB系统表空间,包含多个InnoDB表和关联的索引。

由于在进行备份时,原始文件可能会更改,因此运用原木步骤对相应的备份文件应用相同的更改。

* .ibd

一个InnoDB表空间,可以是(afile-per-table表空间,包含一个单独的InnoDB表和关联的索引,或者(b)每个表一个文件外部表空间位于服务器的数据目录之外,包含一个InnoDB表和关联的索引,或者(c) a一般的表空间,包含一个或多个表及其索引。

因为在进行备份时,原始文件可能会发生更改,所以应用日志步骤将相同的更改应用于相应的备份文件。

* .ibz

MySQL数据目录下的InnoDB数据文件的压缩格式。

产生相反的.ibd压缩备份中的文件。的ibdata *InnoDB系统表空间的文件也会在压缩备份中收到这个扩展名。

.ibz过程中,文件被解压缩运用原木复制回去,或copy-back-and-apply-log的一步。

* .sdi

持有串行字典信息(SDI)对于MyISAM表,这是表的元数据。

在复制这些文件时,数据库将处于只读状态。复制这些文件时不加修改。

*.MYD

MyISAM表数据。

在复制这些文件时,数据库将处于只读状态。复制这些文件时不加修改。

*.MYI

MyISAM索引数据。

在复制这些文件时,数据库将处于只读状态。复制这些文件时不加修改。

*.CSM

CSV表的元数据。

复制这些文件时不加修改。的backup_history而且backup_progress创建的表mysqlbackup使用CSV格式,所以备份总是包含一些具有此扩展名的文件。

* . csv

CSV表的数据。

复制这些文件时不加修改。的backup_history而且backup_progress创建的表mysqlbackup使用CSV格式,所以备份总是包含一些具有此扩展名的文件。

*.著

合并存储引擎对其他表的引用。

在复制这些文件时,数据库将处于只读状态。复制这些文件时不加修改。

*.手臂

存档存储引擎表元数据。

在复制这些文件时,数据库将处于只读状态。复制这些文件时不加修改。

*.ARZ

存档存储引擎表数据。

在复制这些文件时,数据库将处于只读状态。复制这些文件时不加修改。

backup-my.cnf

记录MySQL数据文件布局的配置参数。

在还原操作中使用,以重现与进行备份时相同的布局。

ibbackup_ibd_files

记录.ibd增量备份时,文件及其空间id。

该文件是在增量备份时创建的。在恢复期间,文件中的信息用于从完全备份中删除从完全备份到增量备份期间被删除的表。

ibbackup_logfile

精简版的ib_logfile *MySQL数据目录下的文件。

InnoDB日志文件(ib_logfile *)是固定大小的文件,在数据库操作期间不断更新。对于备份而言,只需要在备份过程中提交的更改。这些变化被记录在ibbackup_logfile,用来重建ib_logfile *应用程序日志阶段的文件。

ibbackup_redo_log_only

创建而不是ibbackup_logfile方法进行的增量备份——incremental-with-redo-log-only选择。

ib_logfile *

在备份目录下创建的mysqlbackup运用原木初始备份后的阶段。

这些文件不是从原始数据目录复制的,而是在备份目录中重新创建的运用原木阶段之后,使用中记录的更改ibbackup_logfile文件。

带时间戳的目录,例如2011 - 05 - 26 - _13 - 42 - 02

创建的——with-timestamp选择。所有备份文件都放在这个子目录中。

使用——with-timestamp选项,方便地在相同的主备份目录下保留一组以上的备份数据。

datadir目录

一个子目录,存储原始MySQL实例中的数据文件和数据库子目录。

在备份目录下创建mysqlbackup

二进制日志文件

来自服务器的二进制日志文件,默认情况下包含在备份中(使用——use-tts选项)。它们允许对服务器进行快照,这样就可以将服务器克隆到其确切的状态。以完全备份为基础,增量备份中包含的二进制日志文件可以用于时间点恢复(PITR),它将数据库恢复到上次完全备份之后某个时间点的状态。看到datadir备份文件内部的目录。MySQL服务器上索引文件的副本列出了所有使用的二进制日志文件,并正确更新了二进制日志文件的位置,以指向这些文件在备份中的位置,该副本也包含在备份文件中datadir目录中。使用——skip-binlog选项从备份中排除二进制日志。

默认情况下,二进制日志文件和索引文件将恢复到它们在备份服务器上找到的相同位置。使用——log-bin选项指定二进制日志的不同目标位置。使用——skip-binlog选项,以跳过还原二进制日志。

二进制日志文件经过压缩保存.bz扩展时,包括在压缩备份。

笔记
  • 对于MySQL Enterprise Backup 8.0.18及更早版本:如果正在备份的服务器上缺少任何二进制日志文件,则应该使用——skip-binlog选项来避免mysqlbackup为丢失的文件抛出错误。

  • 没有二进制日志文件复制到增量备份,如果——use-tts选择或——start-lsn选择使用。如果要包含增量备份涵盖的时间段内的二进制日志文件,请不要使用——use-tts选项和,而不是——start-lsn,可以使用——incremental-base选项,它提供了必要的信息mysqlbackup确保上一次备份的二进制日志数据与当前增量备份的二进制日志数据之间不存在差距。

  • 不将二进制日志文件还原到具有

    继电器的日志文件

从副本服务器中继日志文件,默认情况下,这些文件包含在副本服务器的备份中(使用——use-tts选项)。包含它们可以节省在恢复副本时从源获取中继日志所需的时间和资源。

保存下datadir备份目录下的目录。副本服务器上索引文件的副本列出了所有使用的中继日志文件,并正确更新了中继日志文件的位置,以指向备份目录中文件的位置,该副本也包含在备份目录下datadir目录中。使用——skip-relaylog选项以从备份中排除中继日志。

缺省情况下,中继日志文件和索引文件将恢复到它们在备份副本服务器上找到的相同位置。使用——relay-log选项来为中继日志指定不同的目标位置。使用——skip-relaylog选项,以跳过恢复中继日志。

不将中继日志文件还原到具有.bz扩展时,包括在压缩备份。

* .bz

压缩的二进制日志或中继日志文件。

二进制日志和中继日志文件被压缩保存在.bz扩展时,包括在压缩备份。它们在恢复期间被解压。

undo日志文件

从服务器上撤消日志文件。看到撤消表空间获取详细信息。

对于8.0.16及更高版本:备份中包括活动和不活动的undo表空间。此外,当——incremental-with-redo-log-only选项用于创建增量备份,mysqlbackup从重做日志创建增量备份所涵盖时间段的撤销日志,并将其包含在备份中。

默认保存在datadir备份文件内部的目录。使用——backup_innodb_undo_directory选项指定备份中的撤消日志的另一个位置。

对于8.0.15及更早版本:方法指向的位置将恢复undo表空间——innodb_undo_directory选择。

对于8.0.16及更高版本:在恢复期间,缺省的undo表空间以及备份服务器数据目录中的任何非缺省的undo表空间都被恢复到mysqlbackup选项——innodb_undo_directory.非缺省的外部undo表空间被恢复到在备份服务器上找到的位置;控件更改其还原位置tablespace_tracker文件。

不将撤消日志文件还原到具有

* .uz

压缩的undo日志文件。

undo日志文件被压缩保存.uz扩展时,包括在压缩备份。它们在恢复期间被解压。

加密的密匙环数据文件

对于使用keyring_encrypted_file控件指定的文件keyring_encrypted_file_data选项复制到备份中,其原始名称位于文件夹中。

对于使用非keyring插件的服务器keyring_encrypted_file,文件命名为keyring_kef,保存于文件夹中。

一个加密文件,包含加密InnoDB表的主密钥。看到

副本状态日志文件

通常叫master.info而且relay-log.info,默认情况下,它们包含在复制设置中的复制数据库备份中。看到复制元数据存储库的细节。

保存下datadir备份目录下的目录。

在备份或还原过程中,当——skip-relay-log选择使用。

备份映像文件

生成的单文件备份backup-to-image选项指定的名称——备份映像选择。

您可以移动图像文件而不丢失或损坏其中的内容,然后用mysqlbackup使用提取命令并指定相同的映像名称——备份映像选择。虽然一些额外的文件,如backup-my.cnf子目录存在于备份目录中,这些文件也包含在映像文件中,不需要随映像文件一起移动。

的子目录中的任何其他文件datadir目录(即,在backup-dir/datadir/子目录

从MySQL数据目录下的数据库子目录复制的。

默认情况下,MySQL数据目录下的子目录中任何无法识别的文件都会复制到备份中。要省略这些文件,请指定——only-known-file-types选择。

请注意

这种行为有一些限制。看到讨论在这里

目录

一个子目录,用于存储关于备份的元数据文件。

在备份目录下创建mysqlbackup.下面列出的所有文件放入子目录。

backup_variables.txt

保存备份的重要信息。使用的mysqlbackup只有。

mysqlbackup在初始备份之后的操作期间(如应用日志阶段或恢复阶段),咨询并可能更新此文件。

image_files.xml

控件生成的单文件备份中存在的所有文件(本身除外)的列表backup-to-imagebackup-dir-to-image选项。该文件的详细信息请参见

backup_create.xml

列出创建备份的命令行参数和环境。该文件的详细信息请参见——disable-manifest选择。

backup_content.xml

备份数据的文件和数据库定义的基本元数据。它还包含在备份服务器上定义的所有插件的详细信息,通过这些信息,用户应该确保在恢复的目标服务器上以相同的方式定义相同的插件。该文件的详细信息请参见——disable-manifest选择。

comments.txt

产生的——评论——comments-file选择。

您指定的注释是为了记录此备份作业的目的或特殊考虑。

backup_gtid_executed.sql

表示备份来自启用gtid的服务器。

gtid是MySQL 5.6及更高版本中的一个复制特性。看到使用全局事务标识符进行复制获取详细信息。当你备份一个启用了gtid的服务器时mysqlbackup,文件名为backup_gtid_executed.sql备份目录下的文件夹。在副本服务器上恢复备份数据后,编辑并执行此文件;看到

——slave-info选项backup_gtid_executed.sql生成的。

server-my.cnf

包含备份服务器设置为非默认值的全局变量的值。使用此文件或server-all.cnf启动目标服务器进行恢复。

在一次复制回去copy-back-and-apply-log操作,——datadir——innodb_data_home_dir如果命令通过命令选项对它们进行了更改,则会对文件中的这些内容进行修改。然而,在一个apply-incremental-backup操作时,文件中已经保存的值优先,并且它们不会被命令提供的选项值修改。

警告

当使用该文件重新启动目标服务器时,更改如下参数——tmpdir——general-log等等,以及任何使用绝对文件路径以避免目标服务器意外使用错误文件位置的全局变量。

server-all.cnf

包含备份服务器的所有全局变量的值。使用此文件或server-my.cnf启动目标服务器进行恢复。

在一次复制回去copy-back-and-apply-log操作,——datadir——innodb_data_home_dir如果命令通过命令选项对它们进行了更改,则会对文件中的这些内容进行修改。然而,在一个apply-incremental-backup操作时,文件中已经保存的值优先,并且它们不会被命令提供的选项值修改。

警告

当使用该文件重新启动目标服务器时,更改如下参数——tmpdir——general-log等等,以及任何使用绝对文件路径以避免目标服务器意外使用错误文件位置的全局变量。

backup-auto.cnf

文件副本auto.cnf从备份的服务器。

文件被恢复到恢复后的服务器的数据目录中。要使用内部存储的用于恢复的服务器的UUID,请将文件重命名为auto.cnf在启动服务器之前。

backup-mysqld-auto.cnf

文件副本mysqld -.cnf从备份的服务器。

文件被恢复到恢复后的服务器的数据目录中。若要使用存储在其中的已恢复服务器的持久系统变量,请将文件重命名为mysqld-auto.cnf在启动服务器之前。

ib_buffer_pool

时在服务器上生成的文件innodb_buffer_pool_dump_at_shutdown(MySQL 5.7.7及以后默认启用)或innodb_buffer_pool_dump_now启用。它保存服务器的表空间id和页id列表缓冲池

实际的文件名可能不同,因为它可以由服务器的系统变量配置innodb_buffer_pool_filename

MySQL服务器的默认设置为5.7.7及之后(innodb_buffer_pool_load_at_startup =)在启动过程中,目标服务器将使用该文件恢复备份服务器的缓冲池状态。看到保存和恢复缓冲池状态获取详细信息。

tablespace_tracker

该文件跟踪外部表空间,记录它们在备份服务器上的文件路径和它们的表空间id。

如果在备份的服务器上存在任何外部表空间,跟踪器文件将在datadir备份文件中的文件夹。改变server_file_path在任何表空间的文件中,如果您想要更改该表空间的恢复位置(必须使用绝对路径)。要访问单文件备份中的跟踪器文件,请使用提取命令。

警告
  • 如果跟踪器文件从备份中删除,备份的恢复可能会静默失败,导致恢复的数据被破坏。

  • 对于8.0.16及更高版本:不能通过编辑数据库的缺省撤消表空间来更改它们的恢复位置server_file_path条目。控件的设置控制它们的恢复位置mysqlbackup选项——innodb_undo_directory

恢复完成后,如果恢复的服务器包含任何外部表空间,将在恢复的服务器的数据目录中找到一个跟踪文件。