第 21 章配置文件和参数

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

mysqlbackup像mysqld一样查找和读取 MySQL 配置文件(请参阅使用选项文件中的解释)。您还可以 使用该选项向mysqlbackup提供配置文件。--defaults-file通常, mysqlbackup遵循 mysql处理配置选项的样式:配置文件中列出的组选项作为命令行选项传递[mysqlbackup]您在运行mysqlbackup[client]时指定的任何命令行选项 覆盖配置文件中的值。在重复选项的情况下,最后一个实例优先。

mysqlbackup还读取配置文件中组中的以下选项,以[mysqld]在未连接到服务器时检测与服务器相关的参数(例如,恢复 非 TTS 备份时):

如果这些选项中的任何一个也在该部分中指定 [mysqlbackup],则那里的值优先于该[mysqld] 部分中的值。上面列出的选项以外的选项应在[mysqlbackup][client]部分下指定。

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

服务器数据位置和选项文件

mysqlbackup从以下来源读取要备份或恢复的 MySQL 数据(数据文件、日志等)的位置:

  • 对于备份操作和部分恢复操作,信息是从mysqld中检索的。

  • 对于非部分恢复操作,信息通过以下方式作为参数 提供给mysqlbackup :

    • mysqlbackup命令行,作为命令行选项。

    • 配置文件(见本章开头的解释)。先在组下读取参数[mysqlbackup],再在[client]组下读取,最后在[mysqld]组下读取。您可以将用于恢复操作的常用连接参数(例如,用户登录名、主机名等)放入配置文件中。

存储在备份中的配置文件

每组备份数据都包含一个配置文件, backup-my.cnf其中包含一组配置参数。mysqlbackup 命令生成此文件以记录应用于备份数据的设置这是 mysqlbackupbackup-my.cnf生成的示例文件 :

示例 21.1 样本backup-my.cnf文件

#
# Generated backup-my.cnf file.
# Auto generated by mysqlbackup program.
#
[mysqld]
innodb_data_file_path=ibdata1:12M:autoextend
innodb_page_size=16384
innodb_checksum_algorithm=crc32
innodb_buffer_pool_filename=ib_buffer_pool
innodb_undo_tablespaces=2

生成的所有文件路径 都是相对于备份目录backup-my.cnf下数据目录的。

这些配置参数由 mysqlbackup在诸如 之类的操作期间 读取apply-log,其中从该文件读取参数以确定备份数据的结构。这些参数也可用于还原,以将目标服务器的 InnoDB 设置与备份服务器的 InnoDB 设置进行比较,以便进行任何必要的调整;有关详细信息,请参阅 启动还原的服务器。只有最低限度需要的参数存储在 backup-my.cnf:例如, 当它们仅指向 备份目录下的数据目录时,文件中省略了innodb_data_home_dir和 选项 (innodb_log_group_home_dirbackup-my.cnfbackup-dir/datadir通常)。