第 15 章配置文件和参数

您可以在命令行上或作为配置文件中的配置参数指定mysqlbackup选项。本节介绍配置文件的使用。

通常,mysqlbackup遵循 mysql处理配置选项的样式:[mysqlbackup][client]选项作为命令行选项传递。您指定的任何命令行选项都会覆盖配置文件中的值,并且在重复选项的情况下,最后一个实例优先。 当与mysqld的连接不可用时, mysqlbackup还读取 [mysqld]组中的选项以检测与源存储库相关的参数 。

mysqlbackup选项名称中,破折号 ( -) 和下划线 ( _) 可以互换使用,类似于使用相同约定 的mysqld参数(有关详细信息,请参阅 MySQL 参考手册中的在命令行上使用选项)。MySQL 服务器的参考手册通常使用下划线列出参数名称,以匹配SHOW VARIABLES语句的输出。

选项文件

mysqlbackup读取要备份的 MySQL 数据的位置(按优先级顺序):

  • 来自正在运行的数据库的连接信息,只要有可能。因此,在大多数情况下,您可以避免在命令行或配置文件中指定大多数选项。

  • 您在mysqlbackup 命令行 上指定的参数。您可以通过这种方式为单个备份作业指定某些选项。

  • MySQL 配置文件(默认情况下, my.cnf在 Unix 和 my.iniWindows 上)。先在组下搜索参数[mysqlbackup] ,再在[client]组下搜索。您可以将适用于大多数备份作业的通用参数放入配置文件中。

因为mysqlbackup在初始备份步骤 中不会覆盖任何文件,所以备份目录不能包含任何旧的备份文件。 当要求创建一个已经存在的文件时, mysqlbackup停止,以避免损害现有备份。为方便起见,指定该--with-timestamp选项,该选项始终在主备份目录下为每个备份作业创建一个唯一的带时间戳的子目录。

与备份数据一起存储的配置文件

每组备份数据都包含一个配置文件, backup-my.cnf其中包含一组最小的配置参数。mysqlbackup命令生成此文件以记录应用于 此备份数据的设置。后续操作(例如 apply-log进程)从该文件中读取选项以确定备份数据的结构。

示例 15.1 示例backup-my.cnf文件

这是mysqlbackup生成 的示例backup-my.cnf文件:

[mysqld]
innodb_data_file_path=ibdata1:256M;ibdata2:256M:autoextend
innodb_log_file_size=256M
innodb_log_files_in_group=3

生成文件中的所有路径都backup-my.cnf指向一个备份目录。为了便于验证和维护,您通常将备份的所有数据存储在一个目录中,而不是分散在不同的目录中。

在备份过程中,后续阶段(例如还原操作)所需的配置参数记录在backup-my.cnf备份目录中生成的文件中。只有最少的必需参数存储在 中backup-my.cnf,以允许您将备份恢复到不同的位置,而无需对该文件进行大量更改。例如,虽然 innodb_data_home_dirinnodb_log_group_home_dir选项可以进入 backup-my.cnf,但当这些值与值相同时它们将被省略backup-dir