10bet网址
MySQL 5.7参考手册
相关的文档10bet官方网站 本手册下载
PDF (Ltr)- 36.3 mb
PDF (A4)- 36.3 mb
手册页(TGZ)- 235.6 kb
手册页(邮政编码)- 347.2 kb
信息(Gzip)- 3.3 mb
信息(邮政编码)- 3.3 mb
本手册节选

MySQL 5.7参考手册/.../ 服务器如何评估复制过滤规则

16.2.5服务器如何评估复制过滤规则

如果复制源服务器不向其二进制日志写入语句,则不会复制该语句。如果服务器确实记录了该语句,则该语句将被发送到所有副本,每个副本决定是执行它还是忽略它。

控件可以控制为哪些数据库记录更改——binlog-do-db而且——binlog-ignore-db控制二进制日志记录的选项。有关服务器在计算这些选项时使用的规则的描述,请参见第16.2.5.1节“数据库级复制和二进制日志选项的评估”.您不应该使用这些选项来控制复制哪些数据库和表。相反,可以在副本上使用过滤来控制在副本上执行的事件。

在副本端,决定是执行还是忽略从源接收到的语句是根据——复制- *副本启动时使用的选项。(见第16.1.6节“复制和二进制日志选项和变量”)。控件动态设置由这些选项控制的筛选器改变复制过滤器声明。管理这些过滤器的规则是相同的,无论它们是在启动时创建的——复制- *选项或在副本服务器运行时改变复制过滤器.注意,复制过滤器不能用于配置为Group replication的MySQL服务器实例,因为过滤某些服务器上的事务将使组无法就一致状态达成一致。

在最简单的情况下,当没有——复制- *选项,副本将执行从源程序接收到的所有语句。否则,结果取决于给定的特定选项。

数据库级选项(——replicate-do-db——replicate-ignore-db)先检查;看到第16.2.5.1节“数据库级复制和二进制日志选项的评估”,以了解该过程的说明。如果没有使用数据库级选项,选项检查将继续执行到可能正在使用的任何表级选项(参见第16.2.5.2节“表级复制选项的评估”,以讨论这些问题)。如果使用了一个或多个数据库级选项,但没有匹配,则不会复制语句。

对于仅影响数据库的语句(即,创建数据库删除数据库,修改数据库),数据库级选项总是优先于任何选项——replicate-wild-do-table选项。换句话说,对于这样的表述,——replicate-wild-do-table当且仅当没有应用数据库级选项时,将检查选项。这是与以前版本MySQL行为的一个变化,其中语句创建数据库dbx如果已启动副本,则未复制——replicate-do-db = dbx——replicate-wild-do-table = db % .t1.(错误# 46110)

为了更容易地确定选项集的效果,建议避免混合使用而且忽略选项,或者通配符和非通配符选项。

如果有任何——replicate-rewrite-db选项时,它们将应用于——复制- *测试过滤规则。

请注意

所有复制筛选选项都遵循适用于MySQL服务器中其他地方的数据库和表的名称的相同的大小写敏感性规则,包括lower_case_table_names系统变量。