zoukankan      html  css  js  c++  java
  • 17.3.4 Replicating Different Databases to Different Slaves 复制不同的数据库到不同的Slaves

    17.3.4 Replicating Different Databases to Different Slaves  复制不同的数据库到不同的Slaves
    
    
    
    有可能的一种情况, 你只有一个master但是需要复制不同的数据库到不同的slaves,
    
    
    比如, 你需要分发不同的sales 数据到不同的部门来帮助分散数据分析的压力。
    
    Figure 17.2 Using Replication to Replicate Databases to Separate Replication Slaves
    
    使用复制来复制数据库到单独的复制slaves
    
    
    你可以完成这种分离通过配置master和slave,限制binary log 语句在每个slave处理通过使用
    
    --replicate-wild-do-table 配置选项在每个slave上:
    
    
    重要:
    
    
    你不能使用 --replicate-do-db 用于这个目的当使用基于语句的复制,
    
    
    因为基于语句的复制导致 这个选项的影响 根据当前选择的数据库而定。
    
    
    这个也同样应用于mixed-format replication , 因为这个会让一些更新被复制 在基于语句格式的情况下。
    
    
    然而,如果你只使用基于行的复制, --replicate-do-db是安全的,因为在这种情况下,
    
    当前选择的数据库没有影响在这个选项的操作。
    
    
    例如, 为了支持如图17.2所示的分离,使用复制到复制数据来分散复制slaves:
    
    Replication slave 1 should use --replicate-wild-do-table=databaseA.%.
    
    Replication slave 2 should use --replicate-wild-do-table=databaseB.%.
    
    Replication slave 3 should use --replicate-wild-do-table=databaseC.%.
    
    
    每个slave 在这种配置下 接收整个binary log 从master, 但是只行包括在--replicate-wild-do-table
    
    选项的binary log的events:
    
    
    
    如果你有数据必须被同步到slave 在复制开始前,你有很多选择:
    
    
    同步所有的数据到每个slave,删除数据库,表和其他你不需要保留的。
    
    
    
    使用mysqldump 来创建一个单独的dump 文件为每个数据库,在每个slave上加载dump文件。
    
    
    注意:
    
    这个不会工作 在InnoDB 数据库 除非你使用 innodb_file_per_table.
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    

  • 相关阅读:
    Viusal Studio 2022 正式版安装秘钥
    关于云计算,云存储,和自己开发的云存储的小工具
    网盘工具比较,以及自己开发的网盘工具
    VARIANT及相关类
    关于 BSTR, CComBSTR and _bstr_t
    如何真正发挥Google Docs的威力
    ORM框架EntitysCodeGenerate自定义分页查询及快捷执行SQL(CreateSQL)示例
    关于Java Servlet的中文乱码
    ORM框架VB/C#.Net实体代码生成工具(EntitysCodeGenerate) 【ECG】4.3 介绍
    通用JS验证框架(ChkInputs)概述
  • 原文地址:https://www.cnblogs.com/hzcya1995/p/13351301.html
Copyright © 2011-2022 走看看