查看: 3245|回复: 9
|
【紧急求助】mysql replication 遇到奇怪问题!!!
[复制链接]
|
|
我有两个server 跑着mysql。
server A,server B
然后这两个server时时都有最update的data,两个server在不同的地点,而且两个server都能同时insert data。
所以我用 two way replication, 然后用 VPN link 起来。
server A set master to B
server B set master to A
server A 每天操作,server B 不定时操作(可能整个月都没操作)
就这样没问题的几个月直到有一天我发现 server B 的 data 不 synchronize, 我又重新set 过 server B set master to A 解决。还以为是个案。
没想到几个月后又同样的问题出现,server B 拿不到server A 的资料。 所以当下我就切断 VPN 同时把两个server 都执行 stop slave; 的 command
大问题出来了, 本来存在 server A 的 data , 差不多1000++个 row 不见了!!!
请求帮助
1. 如何防止 mysql replication 不synchronize的问题?
2. 就为了增加知识,为什么我执行 stop slave 会引发这些问题?
3. 我知道能从mysql-bin log 提取所有 SQL 的query记录已恢复数据。 而我也有哪些log。
但是看到的资料都很模糊,没有详细的步骤。请问如何使用mysqlbinlog 回复data?【已解决】
感激感激,谢谢!
本帖最后由 pohlee 于 27-8-2014 07:23 AM 编辑
|
|
|
|
|
|
|
|
发表于 26-8-2014 09:51 PM
|
显示全部楼层
不是很熟replication ,好奇:
server A set master to B
server B set master to A
电脑怎么分辨那里是最新的?
|
|
|
|
|
|
|
|
楼主 |
发表于 27-8-2014 06:03 AM
|
显示全部楼层
gkheng2003 发表于 26-8-2014 09:51 PM
不是很熟replication ,好奇:
电脑怎么分辨那里是最新的?
没关系。。。
mysql 自带的功能,用bin log 来记录sql query 然后pass 给其他 server。。。
比如 我在server A 执行 insert, delete, update 他就会pass 那个 query 给server B 执行。。。这样是one way。。。
two way 的话也是一样的道理 。。。在server B 执行 insert, delete, update 他就会pass 那个 query 给server A 执行。。。
这样的话两边都能有相同的data了。。。
本帖最后由 pohlee 于 27-8-2014 06:06 AM 编辑
|
|
|
|
|
|
|
|
发表于 27-8-2014 09:26 PM
|
显示全部楼层
pohlee 发表于 27-8-2014 06:03 AM
没关系。。。
mysql 自带的功能,用bin log 来记录sql query 然后pass 给其他 server。。。
有没可能2边都在执行同一个record?
esp. transactional data?
好像和MSSQL 的publication 一样?
|
|
|
|
|
|
|
|
发表于 16-7-2015 10:08 AM
|
显示全部楼层
lz现在还在用着master-master rep吗?
|
|
|
|
|
|
|
|
楼主 |
发表于 24-8-2015 10:26 AM
|
显示全部楼层
没了,现在改用 single master multi slave 了。
|
|
|
|
|
|
|
|
发表于 26-8-2015 07:26 AM
|
显示全部楼层
|
|
|
|
|
|
|
发表于 30-10-2015 04:03 AM
|
显示全部楼层
Master to master replication , 问题很大, concurrent update 可以让你哭了。 Master A delete row X , Master B delete row X, replicate 就撞死。要嘛你就skip replication error。
Mysql replication 懒惰的replicate Mysql statement, 不是raw data sync , 你要来做 Sync 是很头痛的。好处是,你做SELECT update,replication Log 会很小。不过我宁愿要raw data sync, less surprise. |
|
|
|
|
|
|
|
发表于 18-11-2015 09:25 AM
|
显示全部楼层
还在采用传统的基于纸张的备份系统,以保持您的所有文件?
你应该停止这种行为了!cloud technology可以帮助您更有效的储存文件
http://blog.exabytes.com.my/2014/02/cloud-backup-service-bank |
|
|
|
|
|
|
|
发表于 7-8-2016 01:06 AM
|
显示全部楼层
Master-Master Replicate一般上是为了防止主要的Master挂了,业务就跟着停止的问题而生的,但是由于是利用bin来透过网络分享资料,当M和M之间的网络有问题时,就会出现Replicate Error,然后Replicate就停止了。然后用了Master-Master Replicate就会开始浪费Autoincreament的ID啦。 |
|
|
|
|
|
|
| |
本周最热论坛帖子
|