博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Mysql跨机房同步方案
阅读量:6658 次
发布时间:2019-06-25

本文共 699 字,大约阅读时间需要 2 分钟。

hot3.png

Mysql跨机房同步方案 博客分类: 数据库 架构  
随着用户量的不断累积,Mysql从单实例单节点发展到多实例多节点的主备,再到一个机房几十台Myql实例,但是现在,一个机房也开始慢慢无法承受庞大的数据吞吐,多机房的理念开始构建。

        假设现有两个机房,需要做到数据同步。

        以下是架构图(实际架构图根据现有机房架构和实际会比下图复杂,但整体思路不变):

        Mycat、Canal、Otter是关键的三项技术:

        Mycat:数据库分库分表中间件,可以管理一个mysql集群,屏蔽了mysql集群,对外伪装成mysql server,用户无感知mysql集群。

        Canal:阿里巴巴开源产品,可以读取mysql二进制日志文件,并解析成想要的数据。

        Otter:阿里巴巴开源产品,配合Canal可以做到读取二进制文件,解析出增量数据sql,然后执行sql到指定连接。

        流程:

            1、用户插入一条数据到mycat

            2、mycat解析sql,分配sql到指定mysql数据库

            3、mysql(假设M1接收到数据)数据库接收数据,根据主从配置,写出二进制日志。

            4、mysql(M2)读取二进制日志同步数据,mysql(S)读取二进制日志同步数据,并写出二进制日志

            5、Canal读取二进制日志,解析成sql

            6、Otter接到sql,获取连接,在机房B的mycat上执行sql

            7、Otter收到sql执行回执,执行完毕。

 

http://my.oschina.net/shyloveliyi/blog/678100

转载于:https://my.oschina.net/xiaominmin/blog/1599108

你可能感兴趣的文章
codeigniter的url重写问题(去掉index.php路由)
查看>>
关于Webpack详述系列文章 (第三篇)
查看>>
微服务实践四: 配置管理
查看>>
.on()之selector——jQuery
查看>>
php解析 html类库 simple_html_dom
查看>>
集训第六周 数学概念与方法 概率 数论 最大公约数 G题
查看>>
存储过程详解
查看>>
【MPI】矩阵向量乘法
查看>>
【块状树】bzoj3731 Gty的超级妹子树
查看>>
序列化作用
查看>>
[JUC-3]ReentrantLock源码分析
查看>>
centos 安装gcc 与 g++方法
查看>>
// FileStream 读取和写入一个文件,一点点读取,可以按照指定读取字节大小读取, //FileStream(文件夹名字,创建的模式,读取的形式)他是一个非静态类,所以用new创建...
查看>>
语法分析-C语言程序
查看>>
FluentData 轻量级.NET ORM持久化技术详解
查看>>
C++ If学习笔记(4)
查看>>
数据库
查看>>
(转)jqGrid的数据格式化
查看>>
Jquery Mobile表单
查看>>
Python内置函数
查看>>