mysql 案例 ~ mysql主从复制错误问题

简介 mysql主从不同步的几种情况

一  具体情况
   1 主库有memory引擎的内存表
      分析 由于memory表的数据存放在内存中,一旦主库数据丢失,从库可能就会发生数据复制异常
   2 从库有super权限的用户进行数据操作
      分析 5.7之前,哪怕设置从库只读,有super权限的用户还是可以进行数据修改,一旦在从库进行操作,那么主从数据必将不一致,发生数据复制异常
   3 由于binlog格式非row的问题
     分析 对于binlog格式非row的情况下,可能某些函数和机制都会造成主从同步异常
   4 由于配置文件不一致导致的问题
      1 server_id配置一致
      2 sql_mode 配置不一致
      3 主从信息保存在文件中,而非table级别
      4 设置了table/db过滤规则
  5 由于主库开启了某种特性造成的问题
     分析 常见于event事件
二 解决办法
  方案1
  改造memory内存表要么去掉,要么改成innodb引擎
  方案2
  设置从库只读,不允许研发人员操作从库,不提供super账号
  方案3
  设置binlog为统一row格式
  方案4
  保证主从的配置文件大体一致,防止出现问题
  方案5
  1 对于已经存在的主从, 新建立events没有影响。从别的主库同步过来的event, 本身不会执行。
   2 对于新建立的主从,如果有events ,那么需要在从库上把event_scheduler设置为off.否则本身还会执行一遍
三 修复主从不一致的方法
  1 跳过主从不一致错误(不推荐),可能导致一系列重复问题
  2 利用备份重做从库
  3 利用binlog2sql/pt等开源工具对不一致的数据进行修复

猜你喜欢

转载自www.cnblogs.com/danhuangpai/p/10364848.html
今日推荐