【问题标题】:filter mysql replication (ignore-db)过滤 mysql 复制 (ignore-db)
【发布时间】:2013-09-20 18:38:44
【问题描述】:

mysql ignore-db 根据服务器 my.cnf AFAIK 工作,

binlog-ignore-db                        = mysql
replicate-ignore-db                     = mysql

我不确定,如果这也适用于客户端,任何人都可以解释机制,我如何能够从主机发送但在客户端不接受。

我为什么要这样做?我有多个从属“2 从属”必须复制 MySQL 表,而其他 2 不应该被覆盖。将复制其他所有表的位置。

阅读此内容:http://dev.mysql.com/doc/refman/5.6/en/replication-rules-db-options.html 并没有让我足够清楚。

【问题讨论】:

    标签: mysql database-replication


    【解决方案1】:

    binlog-ignore-db 是 master 端设置,它告诉 Master 不要记录在列出的 DB 上发生的更改。

    replicate-ignore-db是slave端设置,它告诉Slave忽略与列出的DB相关的传入日志信息

    典型的用例是当您想将不同的数据库从一个主服务器复制到不同的从服务器时。 Master 必须记录所有数据库中发生的所有更改(减去那些可能被binlog-ignore-db 排除的更改,即不会在任何地方复制的数据库)。

    每个从站将收到完整的二进制日志,但只会复制与所选数据库相关的更改(即,replicate-ignore-db 排除的数据库——这个列表在每个从站上会有所不同)。

    mysql数据库是系统数据库,应该从两端忽略,除非你真的,真的知道你在做什么)。 p>

    【讨论】:

    • 感谢 Randomseed,一个问题,所以为了忽略来自 master binlog-ignore-db [to ignore from master end] 的复制/binlog,而从从属端忽略你做复制忽略- db [从奴隶端忽略]?
    • 正确。旁注:如果您想允许point-in-time recovery,二进制日志也很有用。不要不加考虑就忽略数据库。另一方面,忽略数据库会减小二进制日志的大小(从而减少网络流量)。
    猜你喜欢
    • 1970-01-01
    • 2011-03-27
    • 2018-04-30
    • 2015-02-14
    • 1970-01-01
    • 2012-07-05
    • 2019-10-21
    • 2011-10-28
    • 2021-01-29
    相关资源
    最近更新 更多