zoukankan      html  css  js  c++  java
  • 28. pt-table-sync

    前提:得有checksum表


    pt-table-sync --replicate=pt.checksum
    h=192.168.100.101,P=3306,u=admin,p=admin
    h=192.168.100.102,P=3306,u=admin,p=admin
    h=192.168.100.103,P=3306,u=admin,p=admin
    --print --execute


    第一行地址是master
    第二行地址是slave1
    如果有第三行地址,那是slave2
    如果只有master的地址,那么会把所有slave都修复


    --replicate= :指定通过pt-table-checksum得到的表,这2个工具差不多都会一直用。
    --databases= : 指定执行同步的数据库,多个用逗号隔开。
    --tables= :指定执行同步的表,多个用逗号隔开。
    --sync-to-master :指定一个DSN,即从的IP,他会通过show processlist或show slave status 去自动的找主。
    h=127.0.0.1 :服务器地址,命令里有2个ip,第一次出现的是Master的地址,第2次是Slave的地址。
    u=root :帐号。
    p=123456 :密码。
    --print :打印,但不执行命令。
    --execute :执行命令。


    ==============================================

    实验:
    master , slave1 , slave2数据各不相同,而且差别挺大,slave1和slave2都已经复制出错停止了,怎么修复?


    master停止更新,保持静止状态,取show master status的值
    '5c0d1853-e7ed-11e8-99df-000c29c609e1:1-236527,66c6ba64-e89d-11e8-afe3-005056341042:1-3357'

    在slave1和slave2上都做:

    stop slave;

    reset master;

    set global gtid_purged='5c0d1853-e7ed-11e8-99df-000c29c609e1:1-236527,66c6ba64-e89d-11e8-afe3-005056341042:1-3357';

    start slave;

    这样主从都是静止状态,而复制又是双yes

    然后就是在主库checksum , 再sync,把主从数据都调一致。

    然后master就可以正常oltp了,从库也正常复制了。

    ok

    wechat: nick753159 qq: 417966852 email: nzq42@qq.com base: shanghai
  • 相关阅读:
    🍖名称空间与作用域
    🍖文件打开模式 "t"
    🍖函数参数
    【转】LINQ中的Aggregate语法
    【转】c#中string.trimstart() 和string.trimend() 的用法
    1094 和为k的连续区间(暴力)
    1095 Anigram单词
    1031 骨牌覆盖 (斐波拉契数列)
    最长公共子序列(模板 LCSL)
    1092 回文字符串(LCSL_DP)
  • 原文地址:https://www.cnblogs.com/cyberbit/p/pt-table-sync.html
Copyright © 2011-2022 走看看