zoukankan      html  css  js  c++  java
  • 17.1.1.9 Introducing Additional Slaves to an Existing Replication Environment 引入额外的Slaves 到一个存在的复制

    17.1.1.9 Introducing Additional Slaves to an Existing Replication Environment   引入额外的Slaves 到一个存在的复制环境:
    
    
    如果添加另外的slave 到一个存在的复制配置,你可以这样做 不需要停止master.
    
    
    代替的是,设置新的slave 通过 拷贝一份存在的slave,除了配置新的slave 使用不同的server-id值
    
    
    
    复制现有的存在slave:
    
    1.关闭存在的slave:
    
    shell> mysqladmin shutdown
    
    2.将数据目录从存在的slave 复制到新的slave,你可以通过创建tar或者WinZip文件,
    
    
    或者通过执行一个cp或者rsync,确保也包括log files和relay log files.
    
    
    
    一个通用的问题是遇到 当增加新的复制slaves 是新的slaves 失败 一系列的警告和错误信息如下:
    
    
    071118 16:44:10 [Warning] Neither --relay-log nor --relay-log-index were used; so
    replication may break when this MySQL server acts as a slave and has his hostname
    changed!! Please use '--relay-log=new_slave_hostname-relay-bin' to avoid this problem.
    071118 16:44:10 [ERROR] Failed to open the relay log './old_slave_hostname-relay-bin.003525'
    (relay_log_pos 22940879)
    071118 16:44:10 [ERROR] Could not find target log during relay log initialization
    071118 16:44:10 [ERROR] Failed to initialize the master info structure
    
    
    这是由于事实,如果--relay-log  选项没有被指定,relay log 文件包含了主机名作为文件名的部分
    
    
    (这个对于relay log index 文件也是一样 如果  --relay-log-index 选项没有被指定 
    
    
    
    为了避免这个问题,使用 相同的值对于--relay-log 在新的slave,和用于存在的slave
    
    (如果选项没有被指定在存在的slave上,使用existing_slave_hostname-relay-bin.)
    
    
    如果这个是不行的,复制存在的slave的relay log index file 到新的slave 设置 --relay-log-index
    
    在新的slave 来匹配 在存在的slave上。(如果这个选项没有被指定在存在的slave上,使用existing_slave_hostname-relay-bin.index)
    
    
    作为一种选择--如果你已经尝试启动新的slave(遵循下面存在的步骤)
    
    
    a.如果你没有这么做,执行stop slave 在新的slave上
    
    
     如果 你已经启动存在的slave,执行一个stop slave 在存在的slave上
    
    
    b. 复制存在的slave的relay log 文件的内容到新的slave的relay log index file,确保覆盖任何存在的文件的内容.
    
    
    
    c.继续在本节中其余步骤:
    
    
    复制master info 和relay log info 信息库从存在的slave到新的slave.
    
    那些保留当前的log的位置对于master的binary log和slave的relay log
    
    
    
    4.启动存在的slave
    
    
    5.在新的slave上, 编辑配置和给定新的slave 一个唯一的server-id 不被master和其他任何的slave使用
    
    
    开始新的slave,slave使用信息在它的master info 信息库来开始复制
    

  • 相关阅读:
    Reverse Linked List(算法)
    Move Zeroes (算法)
    Majority Element (算法)
    apk资源文件解析异常导致无法发编译的几种情况及解决方案
    使用update包更新系统文件的过程
    听鬼哥说故事之安卓学习手册_研究过程记录(未完成...)
    ios arm64
    ios,新浪微博
    ios ,微信分享
    ios,qq分享
  • 原文地址:https://www.cnblogs.com/hzcya1995/p/13350467.html
Copyright © 2011-2022 走看看