应用迁移,流量切换,数据切换. mysql 同步. 同构,异构两种情况分析.
2015-10-08 18:48
1616 查看
同构:
两边都是mysql,比较简单. 先dump会有一个checkpoint, 然后用这个checkpoint进行数据主从同步.
异构:
一边是mysql单表,另外一边是mysql 分库分表.
先启动触发器,把所有的增删改查 数据都记录下来. 然后dump .然后去确定触发器从哪个id开始执行. insert,delete,update语句.
比较死,但是不需要通过binlog解析. 比较简单.
数据部分:
1.mysql.
全量 dump 输出, 序列号
不停服增量. 序列号 (或者可以开启 master-master 同步,只要保证只有主从服务只有一个启动)
停服后+readonly增量
验证已全部增量完毕?
开启迁移机房服务
回滚:
打开readonly
切换master.增量 序列号
停服master+readonly 增量
验证已全部增量完毕?
2. mongo类似
增量通过 oplog写脚本, 有主控制,可能数据丢失.
3. redis
直接主从同步--数据量不大.
要么停服,全量拷贝.
没有oplog,无法得到序列号. ?
4. zoonkeeper
流量切换
dns切换的问题是有延迟,有些已经解析出来,有缓存. dns服务器在全世界各地.
采用的方案是
1.停主服
2.开slave服务
3.切换dns服务
3.一段时间后开启lvs负载均衡(低峰期)到外网
阿里云的lvs 负载均衡到外网,这里会有大量流量进来.(外网带宽是否支持得住)
4. 没有流量后关闭lvs负载导向.
两边都是mysql,比较简单. 先dump会有一个checkpoint, 然后用这个checkpoint进行数据主从同步.
异构:
一边是mysql单表,另外一边是mysql 分库分表.
先启动触发器,把所有的增删改查 数据都记录下来. 然后dump .然后去确定触发器从哪个id开始执行. insert,delete,update语句.
比较死,但是不需要通过binlog解析. 比较简单.
数据部分:
1.mysql.
全量 dump 输出, 序列号
不停服增量. 序列号 (或者可以开启 master-master 同步,只要保证只有主从服务只有一个启动)
停服后+readonly增量
验证已全部增量完毕?
开启迁移机房服务
回滚:
打开readonly
切换master.增量 序列号
停服master+readonly 增量
验证已全部增量完毕?
2. mongo类似
增量通过 oplog写脚本, 有主控制,可能数据丢失.
3. redis
直接主从同步--数据量不大.
要么停服,全量拷贝.
没有oplog,无法得到序列号. ?
4. zoonkeeper
流量切换
dns切换的问题是有延迟,有些已经解析出来,有缓存. dns服务器在全世界各地.
采用的方案是
1.停主服
2.开slave服务
3.切换dns服务
3.一段时间后开启lvs负载均衡(低峰期)到外网
阿里云的lvs 负载均衡到外网,这里会有大量流量进来.(外网带宽是否支持得住)
4. 没有流量后关闭lvs负载导向.
相关文章推荐
- 常见的MySQL命令大全
- mysql查询区分大小写
- WordPress无法连接MySQL数据库
- Mysql技术内幕知识点摘录
- MySql基础知识
- 设置mysql允许外部IP连接的解决方法
- mysql下float类型使用一些误差详解
- [db][mysql]mysql 性能分析及explain用法
- mysql如何获取某个时间段的数据
- 欢迎使用CSDN-markdown编辑器
- MySQL 5.7并行复制实现原理与调优
- ubuntu14下安装MySQLdb报错的解决办法
- Windows下搭建MySQL Master Slave
- (HY000): Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock' (111)
- mysql event 学习备注
- mysql备份和还原
- mysql 安装
- MySQL学习笔记-源码安装及配置
- ant+dbunit 导xml到mysql
- mysql5.6 win 安装 卸载总结