10bet网址
MySQL Enterprise Backup 3.11用户指南
相关的文档10bet官方网站 下载本手册

1.4备份文件

DBA和开发工作通常涉及逻辑结构,如表、行、列、数据字典等。对于备份,必须了解文件如何表示这些结构的物理细节。

表1.1 MySQL企业备份输出目录下的文件

文件名、模式或扩展名

与原始数据文件的关系

笔记

ibdata *

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

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

* .ibd

InnoDB表文件表空间,每个表空间包含一个InnoDB表和相关索引。

类下创建的表innodb_file_per_table.因为在进行备份时,原始文件可能会发生更改,所以apply-log步骤将相同的更改应用到相应的备份文件。

* .ibz

来自MySQL数据目录的InnoDB数据文件的压缩形式。

生产而不是.ibd压缩备份中的文件。的ibdata *表示InnoDB系统表空间的文件也会在压缩备份中接收这个扩展名。

.ibz在apply-log步骤中,文件被解压缩。

* .frm

保存所有MySQL表的元数据。

在复制这些文件时,数据库将处于只读状态。复制这些文件时不做任何更改。

*.MYD

MyISAM表数据。

在复制这些文件时,数据库将处于只读状态。复制这些文件时不做任何更改。

*.MYI

MyISAM索引数据。

在复制这些文件时,数据库将处于只读状态。复制这些文件时不做任何更改。

*.CSM

CSV表的元数据。

复制这些文件时不做任何更改。的backup_history而且backup_progress创建的表mysqlbackup使用CSV格式,因此备份总是包括一些具有此扩展名的文件。

* . csv

CSV表的数据。

复制这些文件时不做任何更改。的backup_history而且backup_progress创建的表mysqlbackup使用CSV格式,因此备份总是包括一些具有此扩展名的文件。

*.著

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

在复制这些文件时,数据库将处于只读状态。复制这些文件时不做任何更改。

*.丹

触发参数。

在复制这些文件时,数据库将处于只读状态。复制这些文件时不做任何更改。

*.的环境

触发命名空间信息。

在复制这些文件时,数据库将处于只读状态。复制这些文件时不做任何更改。

* .opt

数据库配置信息。

在复制这些文件时,数据库将处于只读状态。复制这些文件时不做任何更改。

* .par

分区表的定义。

在复制这些文件时,数据库将处于只读状态。复制这些文件时不做任何更改。

*.一个RM

归档存储引擎元数据。

在复制这些文件时,数据库将处于只读状态。复制这些文件时不做任何更改。

*.一个RZ

归档存储引擎数据。

在复制这些文件时,数据库将处于只读状态。复制这些文件时不做任何更改。

backup-my.cnf

记录指定布局的配置参数和关于MySQL数据文件的其他重要信息。

该文件是在备份期间创建的,它包含描述备份数据的关键参数,如innodb_data_file_pathinnodb_log_file_sizeinnodb_log_files_in_group等等。它还可能包含其他InnoDB参数,比如innodb_data_home_dir而且innodb_undo_directory如果有些备份存储库选项在备份期间使用。mysqlbackup使用存储在此文件中的参数来了解备份的结构并执行各种操作。您可能需要将其中一些参数提供给mysqlbackup在恢复和到mysqld当您启动目标服务器时,如果目标服务器和备份配置不同。

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 *

在初始备份后的apply-log阶段在备份目录中创建。

这些文件不是从原始数据目录复制的,而是在初始备份之后的apply-log阶段使用记录在ibbackup_logfile文件。

* .bl

每个的重命名版本.isl文件从备份的服务器。

一个.isl控件的位置时,将创建InnoDB表使用语法创建表…数据目录=…,作为指向表空间文件的符号链接。(见外部创建表详情)。的.bl文件可能会被还原,也可能不会.isl文件。复制回去操作。如果指定的目录在恢复备份的服务器上不存在mysqlbackup命令尝试创建它。如果无法创建目录,则恢复操作失败。因此,如果您使用数据目录子句将表放在不同的位置,并恢复到具有不同文件结构且无法创建相应目录的服务器,请编辑.bl还原到指向目标服务器上确实存在的目录之前的文件。

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

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

使用——with-timestamp当您打算在同一主备份目录下保留多组可用的备份数据时,可以使用此选项。

datadir目录

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

在备份目录下创建的mysqlbackup命令。

二进制日志文件

来自服务器的二进制日志文件,默认情况下包含在备份中(使用——use-tts选项)。它们允许获取服务器的快照,因此可以将服务器克隆到其确切的状态。以完全备份为基础,增量备份中包含的二进制日志文件可用于时间点恢复(PITR),它将数据库恢复到上次完全备份之后的某个时间点的状态。看到第4.3节“时间点恢复”获取详细信息。

保存在datadir备份目录下的目录。使用——skip-binlog选项,在备份中排除二进制日志。对于MySQL 5.5及更早版本,以及所有离线备份,请使用——log-bin-index选项指定MySQL服务器上索引文件的绝对路径,列出所有使用的二进制日志文件,如果它与该选项的默认值不同,则使用formysqlbackup查找二进制日志文件并将其包含在备份中。

笔记

中继日志文件

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

保存在datadir备份目录下的目录。使用——skip-relaylog选项,在备份中排除中继日志。对于脱机备份,请使用——relay-log-index选项指定MySQL服务器上索引文件的绝对路径,该文件列出了所有使用的中继日志文件,如果它与该选项的默认值不同,则使用formysqlbackup查找中继日志文件并将它们包含在备份中。

从机状态日志文件 通常叫master.info而且relay-log.info时,它们默认包含在复制设置中的从数据库备份中。看到复制元数据存储库查阅详情。 保存在datadir备份目录下的目录。对于脱机备份,请使用——master-info-file而且——relaylog-info-file选项用于指定信息文件的绝对路径,如果它们与选项的默认值不同,则为mysqlbackup找到那些文件,并把它们包含在备份中。

图像文件

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

如果备份数据目录仅由零字节文件组成,在顶级目录中只有一个大数据文件,则有一个单文件备份。可以移动图像文件而不丢失或损坏其中的内容,然后使用mysqlbackup命令使用提取属性指定相同的映像名称——备份映像选择。虽然一些额外的文件,如backup-my.cnf子目录存在于备份目录中,这些文件也包含在映像文件中,不需要随着它一起移动。

目录下的数据库子目录中的任何其他文件datadir目录(即在backup-dir/datadir/data-base-name

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

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

目录

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

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

backup_variables.txt

保存有关备份的重要信息。供mysqlbackup命令。在MySQL Enterprise Backup 3.6之前,此信息位于一个名为ibbackup_binlog_info

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

image_files.xml

属性生成的单文件备份中出现的所有文件的列表(其本身除外)backup-to-imagebackup-dir-to-image选项。该文件的详细信息请参见第11.4节,“使用MySQL企业备份清单”

该文件在生成后的任何阶段都不会被修改。

backup_create.xml

列出创建备份的命令行参数和环境。该文件的详细信息请参见第11.4节,“使用MySQL企业备份清单”

该文件创建后不会被修改。属性可以防止生成此文件——disable-manifest选择。

backup_content.xml

备份数据的文件和数据库定义的基本元数据。它还包含备份服务器上定义的所有插件的详细信息,用户应该确保在目标服务器上以相同的方式定义相同的插件以进行恢复。该文件的详细信息请参见第11.4节,“使用MySQL企业备份清单”

该文件一旦创建就不会被修改。属性可以防止生成此文件——disable-manifest选择。

comments.txt

——评论——comments-file选择。

注释由您指定,用于记录此备份作业的目的或特殊注意事项。

backup_gtid_executed.sql

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

gtid是MySQL 5.6及更高版本的复制特性。看到使用全局事务标识符进行复制获取详细信息。当备份启用了gtid的服务器时,文件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,等等,以及任何使用绝对文件路径的全局变量,以避免目标服务器意外使用错误的文件位置。


InnoDB数据

InnoDB存储引擎管理的数据始终进行备份。备份的innodb主数据文件包括ibdata *文件代表系统表空间可能还有一些用户表的数据;任何.ibd文件类创建的用户表中的数据file-per-table设置启用;从ib_logfile *文件(重做日志表示备份运行时发生的更改的信息),该信息存储在新的备份文件中ibbackup_logfile

如果您使用压缩备份特性,则.ibd将压缩格式的文件重命名为.ibz文件

文件,因为它们最初被复制,形成了一个原始备份这需要在准备恢复之前进行进一步的处理。然后运行应用步骤中记录的更改,更新备份文件ibbackup_logfile文件,生成准备备份.此时,备份数据对应于单个时间点。现在可以将文件恢复到原始位置,或者用于其他用途,例如测试、报告或部署为复制从服务器。

要将InnoDB表恢复到原始状态,还必须有相应的.frm文件连同备份数据一起。否则,如果有人运行了表,表定义可能会丢失或过时ALTER TABLE删除表语句。默认情况下,mysqlbackup命令自动复制.frm在备份操作期间备份文件,并在恢复操作期间恢复文件。

来自MyISAM和其他存储引擎的数据

mysqlbackup命令还可以备份.MYD文件.MYI文件,和关联.frmMyISAM表的文件。这同样适用于具有其他扩展名的文件,如这个列表

请注意

虽然MySQL Enterprise Backup可以备份非InnoDB数据(如MYISAM表),但要备份的MySQL服务器必须支持InnoDB(也就是说,如果服务器是用InnoDB启动的,备份过程将会失败——innodb =了——skip-innodb选项),并且服务器必须包含至少一个InnoDB表。

MyISAM表和这些其他类型的文件不能以与InnoDB表相同的非阻塞方式进行备份。这个阶段是热备份:在备份时阻止对这些表的更改,可能会使数据库在一段时间内无响应,但在备份期间不需要关闭。

请注意

要避免在繁忙数据库备份期间出现并发问题,可以使用——only-innodb——only-innodb-with-frm选项只备份InnoDB表和相关数据。

备份中包含的已生成文件

备份数据包括备份过程中产生的一些新文件。这些文件用于控制以后的任务,例如验证和恢复备份数据。备份过程中生成的文件包括:

  • 元/ backup_create.xml:列出命令行参数和创建备份的环境。

  • 元/ backup_content.xml:备份数据的文件和数据库定义的基本元数据。

  • backup-my.cnf:记录应用于备份的关键配置参数。读取这些配置参数mysqlbackup在像运用原木以确定备份数据的结构。在恢复操作期间,还将检查这些参数是否与目标服务器的配置兼容。

  • server-my.cnf:包含备份服务器全局变量的非默认值。

  • server-all.cnf:包含备份服务器的所有全局变量值。

备份目录下所有文件的详细信息请参见表1.1,“MySQL企业备份输出目录中的文件”

单文件备份

根据您的工作流程,您可能会执行单文件备份,而不是为原始实例中的每个文件生成单独文件的典型备份。单文件格式更容易传输到不同的系统,压缩和解压缩,并确保以后不会误删除备份文件。它就像多文件备份一样快,做一个完整的恢复;恢复单个文件可能比恢复多文件备份慢。有关说明,请参见第3.3.5节“进行单文件备份”