• mysql的主从复制


    一.主从复制简介

    二.主从复制原理

    四.主从复制基本故障处理

    五.延时从库

    六.半同步复制

    七.过滤复制

    四、主从复制基本故障处理

    SQL 线程为NO

      一般情况下,因为主库一开始本来就有一些存在的库,在已经有这些库的情况下,开启了binlog,这时候mysql-bin.00001,位置点是120. 老早存在的那些库的信息不会在开启的这个binlog里。
    
      但是这时候在老在存在的库,进行SQL语句操作,这个时候位置点变成了340.
    
      这时候从库做主从复制的时候,从库是一个新库只有一些基本的系统库没有老早就存在的那些库。这时候change master 从mysql-bin.00001,位置点120开始的话就会报错。
    
      因为从库本身没有老早存在的库,还执行对老早存在的库的SQL语句。
    
      如果不想报错,从库就从位置点340开始。就不会把要执行的那些SQL语句记录进去了。
    
      所以要保证两库的数据一致,然后才做主从复制。

      解决:

        在主库做全贝操作: 

         mysqldump -uroot -p1 -A --master-data=2 > /tmp/full.sql
    
           scp /tmp/full.sql 172.16.1.7

        在从库需要导入数据:

          但前提是先把主从复制停掉:
    
          stop slave;
    
          然后导入数据:
    
          source /tmp/full.sal

    全贝的效果就是主库里所有的表都备份了,而且不管些什么都会同步过来。

        这时候看一下 /tmp/full.sql   找到里面的位置点   重置从表。
    
        vim /tmp/full.sql
    
        位置点
    
        reset slave
    
        重置的内容
    
        开启从库

        

      

  • 相关阅读:
    操作符的详解
    一切皆对象
    对象导论
    mysql
    bootstrap学习
    素数筛选法
    python的urllib库
    是做应用还是搞算法?
    金山词霸笔试题目笔记
    双十一,更是技术的战争~~
  • 原文地址:https://www.cnblogs.com/zhangrenguo/p/10725123.html
走看看 - 开发者的网上家园