zoukankan      html  css  js  c++  java
  • Mysql主从复制机制原理

    Mysql主从复制的用途

    • 实施灾备,用于故障切换
    • 读写分离用于查询服务
    • 备份,避免数据丢失

    Mysql主从复制的条件

    • 主库开启binlog日志(从库需要从这里面读取)
    • 主从的Mysql server-id需要不同
    • 从库服务器能连通主库

    Mysql主从复制原理

     

    1. 主库接收用户做crud操作,写入数据库,更新结果集到binlog中
    2. 主从同步是主找从的,从库IO发起请求,主库的主进程看从库 master change中给的参数是否合法,如果合法主进程交给IO进程执行 3 操作,否则拒绝处理
    3. 主库根据master的位置点,从这个位置点的binlog日志一直到binlog日志最后,将其准备发送给从库。
    4. 将找到的binlog日志发送个i从库,并且还会发送新的日志点。
    5. 从库接收到binlog日志,将其写入realy-log(中继日志)中。
    6. 从库IO进程再向master info保存主库传过来的最后的binlog日志的日志位置点。
    7. 从库IO时循环发起请求的,发了再要,不会管SQL读取中继日志的操作。从库IO根据新的日志点,向主库发起请求,主库执行 3 4 操作,再发送新的binlog给从库,从库再执行5操作。
    8. 其实第一次向relay-log中放数据时候,SQL进程就已经知道,SQL进程将relay-log中的SQL语句转换成数据,写入从库,从而实现同步。
    9. 从库SQL线程读取中计日志,并不会一次性读完,会把读取到的日志点存放到relay-log.info中
  • 相关阅读:
    个人阅读作业
    软件工程基础/个人项目1
    个人阅读作业3
    个人阅读作业2
    代码复审
    软件工程:结对编程1
    个人阅读作业
    软工作业1:单词统计
    有关敏捷开发的一点感想[110617班 刘耀先]
    Pair Project: Elevator Scheduler [电梯调度算法的实现和测试][关于电梯调度算法的附加思考]:刘耀先-11061183,罗凡-11061174
  • 原文地址:https://www.cnblogs.com/arebirth/p/mysqlmasterslaveprinciple.html
Copyright © 2011-2022 走看看