16.2.4 中继日志和复制应用程序元数据存储库

副本服务器创建几个信息存储库以用于复制过程:

  • 由复制 I/O 线程编写的* relay log *包含从复制源服务器的二进制日志中读取的事务。中继日志中的事务由复制 SQL 线程应用于副本。有关中继日志的信息,请参见第 16.2.4.1 节“中继日志”

  • “复制连接元数据存储库”包含复制 I/O 线程连接到复制源服务器并从源的二进制日志中检索事务所需的信息。复制连接元数据存储库被写入mysql.slave_master_infotable 或文件。

  • “复制应用程序元数据存储库”包含复制 SQL 线程读取和应用副本的中继日志中的事务所需的信息。复制应用程序元数据存储库被写入mysql.slave_relay_log_infotable 或文件。

复制连接元数据存储库和复制应用程序元数据存储库统称为复制应用程序元数据存储库。有关这些的信息,请参见第 16.2.4.2 节“复制应用程序元数据存储库”

使复制能够应对意外的中断. mysql.slave_master_infomysql.slave_relay_log_infotable 是使用事务存储引擎InnoDB创建的。对复制应用程序元数据存储库 table 的更新将与事务一起提交,这意味着即使在服务器意外停止的情况下,记录在该存储库中的副本的进度信息也始终与已应用于数据库的信息一致。必须在副本上启用--relay-log-recovery选项,以确保弹性。有关更多详细信息,请参见第 16.3.2 节“处理副本意外停止”