linux mysql 主复制机器2台复制环境某个表a 他的主键是(id ,mesid)
id并不是自动增长 ,mesid也一样。结果从机到导入该表主机的备份, 之后slave start 结果发现这表总是少6条数据。  (原因在于这个表数据更新实在太快)
等主机表scp到从机 从机导入并恢复总会丢失数据的 。1  问有没有什么工具可以做到在2个不同机器的mysql 同名表找出不同的数据  (手工花了我1个半小时 2分法太花时间) 
难点:这个表id不是自动增长导致记录到从机有些错位。 我记录备份的最大id是 56130, 结果发现在从机上那个表是 55200的时候 在跨度 5600之间少了6条数据。手工发现的这个问题。  (ssis可以做 ,另外我想到的方法是改名后在同库比较 --至少比目前方法要好)。  这里质疑为什么我导数据前记录select count(1) from a 是56130,  为什么在从机器上恢复这个表会丢失到 是 55200的时候 在跨度 5600之间少了6条数据?????    另外问有什么便捷的工具来在不同机器之间比较同名表数据差异?
2  有人建议使用分布式内存cache 软件 memcached 
这里想知道这个memcached的大致是如何实施的?

解决方案 »

  1.   

    找到方法 用专业的etl工具 倒入sqlserver之后再比对反复思考这个原因是下面产生的
    update 或者select 那6行 产生 行锁 这时候 mysqldump  这个表,  这时候丢了那6条数据
      

  2.   

    etl普遍对 mysql 支持好差我的解决方法如下 :
    把pk组合字段(id, a ,b )单独提出来  放到一个临时表a,
    之后
    看这个临时表a 和在线表 比较看是否有他不再 在线表的pk。原因 : 这个表有日期字段(某几行估计当时在做update 导致行锁 最后mysqldump丢失这几行),导致迁移的时候部分日期丢失