第一种:通过sql_slave_skip_counter跳过同步错误,适用于一般异常如插入时主键冲突

这种情况一般是在从库进行了写操作,错误提示

Last_SQL_Errno: 1062

Last_SQL_Error: Error 'Duplicate entry '14' for key 'PRIMARY'' on query. Default database: 'hadoop'. Query: 'INSERT INTO `user` (`username`, `password`) VALUES ('b', 'b')'

1 row in set (0.00 sec)

如果提示

Last_SQL_Errno: 126

Last_SQL_Error: Error 'Incorrect key file for table './hadoop/user.MYI'; try to repair it' on query. Default database: 'hadoop'. Query: 'INSERT INTO `user` (`username`, `password`) VALUES ('c', 'c')'

则先修复下表repair table user;再继续下面的操作

从库执行:

  1.  
    #停止slave服务
  2.  
    mysql> stop slave;
  3.  
    Query OK, 0 rows affected, 1 warning (0.00 sec)
  4.  
    #跳过一步错误,后面的数字可变,如果还不行可执行多次
  5.  
    mysql> set global sql_slave_skip_counter =1;
  6.  
    Query OK, 0 rows affected (0.00 sec)
  7.  
    #开始slave服务
  8.  
    mysql> start slave;
  9.  
    Query OK, 0 rows affected (0.00 sec)
  10.  
    #查看slave状态
  11.  
    mysql> show slave status\G
  12.  
    *************************** 1. row ***************************
  13.  
    Slave_IO_State: Waiting for master to send event
  14.  
    Master_Host: 192.168.20.195
  15.  
    Master_User: test
  16.  
    Master_Port: 3306
  17.  
    Connect_Retry: 60
  18.  
    Master_Log_File: mysql-bin.000004
  19.  
    Read_Master_Log_Pos: 251
  20.  
    Relay_Log_File: mysqld-relay-bin.000006
  21.  
    Relay_Log_Pos: 251
  22.  
    Relay_Master_Log_File: mysql-bin.000004
  23.  
    Slave_IO_Running: Yes
  24.  
    Slave_SQL_Running: Yes
  25.  
    Replicate_Do_DB:
  26.  
    Replicate_Ignore_DB:
  27.  
    Replicate_Do_Table:
  28.  
    Replicate_Ignore_Table:
  29.  
    Replicate_Wild_Do_Table:
  30.  
    Replicate_Wild_Ignore_Table: mysql.%,information_schema.%,performance_schema.%
  31.  
    Last_Errno: 0
  32.  
    Last_Error:
  33.  
    Skip_Counter: 1
  34.  
    Exec_Master_Log_Pos: 251
  35.  
    Relay_Log_Space: 552
  36.  
    Until_Condition: None
  37.  
    Until_Log_File:
  38.  
    Until_Log_Pos: 0
  39.  
    Master_SSL_Allowed: No
  40.  
    Master_SSL_CA_File:
  41.  
    Master_SSL_CA_Path:
  42.  
    Master_SSL_Cert:
  43.  
    Master_SSL_Cipher:
  44.  
    Master_SSL_Key:
  45.  
    Seconds_Behind_Master: 0
  46.  
    Master_SSL_Verify_Server_Cert: No
  47.  
    Last_IO_Errno: 0
  48.  
    Last_IO_Error:
  49.  
    Last_SQL_Errno: 0
  50.  
    Last_SQL_Error:
  51.  
    1 row in set (0.00 sec)

第二种:重新做主从,然后使用change master指定同步位置,这种耗时长

主库执行:

  1.  
    mysql> flush tables with read lock;
  2.  
    [root@hd3 ~]# mysqldump -uroot -p123456 --lock-all-tables --flush-logs hadoop > /data/hadoop.sql
  3.  
    [root@hd3 ~]# scp /data/hadoop.sql root@192.168.20.201:/data/
  4.  
    mysql> unlock tables;

从库执行:

  1.  
    mysql> stop slave;
  2.  
    Query OK, 0 rows affected (0.00 sec)
  3.  
    mysql> reset slave;
  4.  
    Query OK, 0 rows affected (0.01 sec)
  5.  
    mysql> source /data/hadoop.sql
  6.  
    mysql> change master to master_host='192.168.20.195', master_port=3306, master_user='test',master_password='123456', master_log_file='mysql-bin.000003',master_log_pos=932;
  7.  
    Query OK, 0 rows affected (0.03 sec)
  8.  
    mysql> start slave;
  9.  
    Query OK, 0 rows affected (0.00 sec)

第三种:使用第三方工具如pt-table-sync

MySQL主从不同步、数据不一致解决办法的更多相关文章

  1. 使用Sqoop,最终导入到hive中的数据和原数据库中数据不一致解决办法

            Sqoop是一款开源的工具,主要用于在Hadoop(Hive)与传统的数据库(mysql.postgresql...)间进行数据的传递,可以将一个关系型数据库(例如 : MySQL , ...

  2. mysql主从不同步处理过程分享

    背景  8月7日15:58收到报障数据库出现不同步:数据库共四台,分别为10.255.70.11,10.255.70.12,10.255.70.13,10.255.70.14(ip为虚拟ip) 数据库 ...

  3. MySQL主从数据库同步延迟问题解决(转)

    最近在做MySQL主从数据库同步测试,发现了一些问题,其中主从同步延迟问题是其中之一,下面内容是从网上找到的一些讲解,记录下来以便自己学习: MySQL的主从同步是一个很成熟的架构,优点为:①在从服务 ...

  4. 配置MySQL主从双向同步

    原文地址:http://www.cnblogs.com/zhongshengzhen/ 原主数据库:192.168.137.33 原从数据库:192.168.137.197   需要先阅读并操作:ht ...

  5. Mysql文件太大导入失败解决办法总结

    Mysql文件太大导入失败解决办法总结 在使用phpmyadmin导入数据库的时候可能会碰到由于数据库文件太大而无法导入的问题! 英文提示如下:File exceeds the maximum all ...

  6. MYSQL主从库同步配置过程

    MYSQL主从库同步配置过程 为了实现网站数据库的异地备份,采用了MySQL数据库主从同步配置,需要两台服务器分别作为主从库,当主库发生增删改等操作,会实时反映到从库,我的个人服务器配置如下: 主库为 ...

  7. Centos 配置 Mysql 主从双向同步

    配置之前,请先阅读mysql主从复制: Mysql-主从复制 原:  主从环境: 主服务器:192.168.153.130 从服务器:192.168.153.131 1.从数据库创建同步用户,将主数据 ...

  8. 您配置文件中的设置 (空密码的 root) 与 MySQL 默认管理员账户对应...的解决办法

    您配置文件中的设置 (空密码的 root) 与 MySQL 默认管理员账户对应.……解决办法很简单:1.修改root@localhost权限的密码. 打开wamp的phpmyadmin,进入它的管理界 ...

  9. 爬虫爬数据时,post数据乱码解决办法

    最近在写一个爬虫,目标网站是:http://zx.bjmemc.com.cn/,可能是为了防止被爬取数据,它给自身数据加了密.用谷歌自带的抓包工具也不能捕获到数据.于是下了Fiddler.     F ...

随机推荐

  1. 深入刨析tomcat 之---第23篇 聊一下web容器的filter配置和defaultservet

    writedby 张艳涛,在一个webapp应用程序内如何配置filter? <?xml version="1.0" encoding="ISO-8859-1&qu ...

  2. 自建简易FaaS平台

    近些年来,传统的 IaaS.PaaS 已经无法满足人们对资源调度的需求了.各大云厂商相继开始推出自家的 Serverless 服务.Serverless 顾名思义,它是"无服务器" ...

  3. web知识架构思维导图

    图片双击放大还是很清晰的.原图大小5.1M

  4. SQL语句(三)分组函数和分组查询

    目录 一.分组函数 特点 1. 各函数的简单使用 2. 搭配distinct的使用 3. COUNT 统计行数 4. 和分组函数一同查询的字段要求是group by后的字段 二.分组查询 1. 简单应 ...

  5. SQL语句(二)数据排序和单行函数

    目录 一.排序查询 1. 基本排序 2. 多条件排序 二.单行函数 调用方法 字符函数 ①LENGTH函数 ②CONCAT函数 ③upper 和 lower ④substr ⑤instr ⑥trim ...

  6. 20初识前端HTML(1)

    1 .HTML 1.1 网页的组成 文字 图片 链接 等元素构成.除了这些元素之外 网页中还可以包含音频 视频 等 1.2 WEB前端开发的流程 现在主流的开发流程: 前后端分离的开发模式. 美工:p ...

  7. 掌握JavaScript中的Promise,实现异步编程

    事件循环 基本介绍 JavaScript是一门单线程的编程语言,所以没有真正意义上的并行特性. 为了协调事件处理.页面交互.脚本调用.UI渲染.网络请求等行为对主线程造成的影响,事件循环(event ...

  8. ICCV2021 |重新思考人群中的计数和定位:一个纯粹基于点的框架

    ​ 论文:Rethinking Counting and Localization in Crowds:A Purely Point-Based Framework 代码:https://github ...

  9. Java 多线程与并发【原理第二部分笔记】

    Java 多线程与并发[原理第二部分笔记] 什么是Java内存模型中的happens-before Java内存模型,即JMM,本身是一种抽象的概念,并不是真实存在的,他描述的是一组规则或者说是一种规 ...

  10. SpringBoot开发二十三-统一记录日志

    统一记录日志 AlphaAspect package com.nowcoder.community.aspect; import org.aspectj.lang.ProceedingJoinPoin ...