zoukankan      html  css  js  c++  java
  • 基于复制的高可用

    基于复制的高可用

    热备份

    热备份原理:是指master故障以后,热备份提供一个master的原备份的,且所有的客户端和slave都可以切换到热备份服务器上并继续工作。

    需要解决的问题

    1)故障发生以后,系统热备到master上,你正从一个新的master上进行复制,所以有必要将binlog的位置转换到热备份服务器上;
    2)当slave故障以后转移到热备份slave,热备份slave可能实际上并没有包含原slave记录的所有更改;
    3)当把修复的master带回配置中去,被修复的master中的二进制日志中有些更改可能没有离开过服务器。

    解决方法

    1)默认情况下slave执行的事件没有被记录到二进制文件中,如果这个slave是master的一个备份,这时会出现问题,master有必要发送给备份服务器的所有更改写入备份服务器的二进制中,,在my.cnf中添加一个选项log-slave-updates.
    这个确保来自master并被执行的语句会被写入slave的二进制中

    Log-slave-updates
    

    2)切换时slave和备份服务器在完全相同的位置停止运行,然后把slave重定向到备份服务器上。
    如果备份服务器超前slave。为了让slave赶上备份服务器并在正确的位置停止,使用
    start slave until master_log_file=’master-bin.0009’,master_log_pos=776;
    Select master_pos_wait(‘master-bin.0009’,776);

    之后使用change master to 命令切换到备份服务器,然后start slave;

    双主

    使用双master时。有两种不同的配置方法:
    Active-active:操作同时被写入两个服务器,然后把更改转移到其他master;
    Active-passive:一个master处理写入,而另一个服务器只是和被动master保持一致:

    Active-active:最常见的用途就是让服务器从地理位置上接近不同的用户组
    缺点:如果同样的信息在两个master 上被更新,比如一个用户突然被加入到两个master上这两个更新会有冲突,并很可能导致复制停止:

    Active-slave:会出现脑裂情况:

    共享磁盘

    两个master通过共享磁盘的体系结构比如SAN(存储区域网络)被链接到一起,并被设置为使用相同的文件:
    优点:由于binlog文件存储在共享磁盘上,所有不需要转换binlog位置,两台服务器就是彼此的镜像。最有必要的地方是要注意slave停下来的地方,执行change master命令,并再次复制;

    使用drbd复制磁盘

    DRBD(分布式复制块设备)
    其中DRBD用于复制磁盘到备份服务器这个设置的接嗲。DRBD块设备一次把数据写入到真的磁盘。这两个DRBD的进程通过网络链接以确保任何对主Master的更改都被复制到 备份master 上

    半同步复制

    允许更改操作继续执行之前,确保更改操作至少被写入一个slave磁盘。这意味着对于每一个链接,最多只有一个事务会由于master奔溃而丢失

    mysql的横向扩展

    添加更多的服务器称为横向扩展
    异步复制:为了处理大量的读请求,站点通过复制创建master的拷贝,然后让slave处理所有的读请求,而master处理写请求,这个过程是异步的,因为master并不等待slave应用改变,而是将每个slave更新请求分发到slave。

    复制监控

    【监控线程】
    控制复制的线程共有3个线程,在master上,每个已链接的slave都有一个线程,称为binlog dump.线程,该线程负责将binllog事件传给已链接的slave。Slave上有两个线程,即slave IO 和SQL。I/O线程负责读取master上的传来的binlog事件,然后将这些事件写入slave的中继日志。SQL线程负责读取并在之后执行中继日志中的事件然后执行。

    使用show processlistG 命令可以监控binlog dump线程当前的状态。

  • 相关阅读:
    如何利用UltraEdit语法着色来编辑shell脚本
    css 运动背景
    页面加载进度条
    jScrollPane滚动条
    页面加载进度条改进版
    js页面新消息提示
    一道题
    jquery插件 展示信息
    冒泡排序和快速排序
    字体背景
  • 原文地址:https://www.cnblogs.com/hanfei-1005/p/5691169.html
Copyright © 2011-2022 走看看