zoukankan      html  css  js  c++  java
  • MySQL 主从同步

    一、需求

    MySQL主从同步可以实现读写分离,用以减轻主库负载.

    二、原理知识

    在简单的一主一从的同步机制中。主库有IO线程用于mysql-bin的读写,从库有IO线程用于向主库请求mysql-bin 和 SQL线程解析mysql-bin。

    三、实现主从同步

    首先主库要打开log-bin。其他步骤如下

    1.复制数据

    (1)主库

    把主库数据mysqldump到SQL文件,确保主从有完整数据
     mysqldump  --master-data=1  然后  grep -n 'CHANGE MASTER' md.sql 也可拿到主从复制对接点
     -x 加所有库的只读锁 -l 加所有表的只读锁 跟 with read lock只读锁效果一样

    --master-data=1后 SQL文件中CHANGE MASTER TO 打开注释,SQL将自动包含日志的文件及位置

    --master-data=2后 SQL文件中CHANGE MASTER TO 加上注释,需要手动获得复制对接点
     flush table with read lock; 加只读锁
     unlock tables;

    (2)从库

    mysql 命令导入SQL文件

    2.在主库建立专门用于同步的账号


       grant replication slave on *.* to rep@localhost identified by 'rep';
       flush privileges;


    3.在从库设定主库


     在主库执行 show master status; show master lgos;拿到主从复制对接点
     在从库执行change master to ...
     如果 change master to ... 执行有错误,需要先停止slave:stop slave;


    4.从库start slave

    检查从库状态

     show slave status G; 

    按图示 3-4-5-6  的顺序重复执行来达到主从同步的目的

  • 相关阅读:
    Encountered a section with no Package: header
    java的System.getProperty()方法能够获取的值
    谷歌技术"三宝"之MapReduce
    surfaceDestroyed什么时候被调用
    调用CachedRowSetImpl类时,为什么会出现这样的错误
    正則表達式举例(下)
    java中接口的定义与实现
    UVA 538
    编程算法
    3D空间包围球(Bounding Sphere)的求法
  • 原文地址:https://www.cnblogs.com/zhengwenqiang/p/7994504.html
Copyright © 2011-2022 走看看