3 Mycat读写分离实现

1、读写分离介绍
  1. 基于Mysql主从复制,我们通过Mycat,能够实现读写分离,即master主服务器实现写操作(insert,update,delete等),salve从服务器实现读操作(select等)
  2. 主服务器一旦有写入操作,从服务器通过读取binlog,来实现数据同步;Mycat也时时发送心跳包来检测mysql服务器是否可用;
2、读写分离核心配置详解

Mycat读写分离核心配置文件:schema.xml

schema.xml有几个标签,分别是:

mycat:schema schema主配置标签,

schema逻辑库配置标签,

dataNode数据节点配置标签,

dataHost数据库主机配置标签;

schema标签属性介绍: (定义逻辑数据库)

dataNode标签属性:(定义数据分片节点)


dataHost标签属性: (定义后端的数据库主机)

heartbeat子标签属性(心跳执行SQL)

writeHost子标签属性(写主机配置)

readHost子标签属性(读主机配置)

参考配置:

xml 复制代码
<?xml version="1.0"?>

<!DOCTYPE mycat:schema SYSTEM "schema.dtd">

<mycat:schema xmlns:mycat="http://io.mycat/">

 

  <schema name="TESTDB" checkSQLschema="true" sqlMaxLimit="100" dataNode="dn1">

  </schema>

  

  <dataNode name="dn1" dataHost="localhost1" database="db_java1234" />

 

  <dataHost name="localhost1" maxCon="1000" minCon="10" balance="3"

         writeType="0" dbType="mysql" dbDriver="native" switchType="2"  slaveThreshold="100">

     <heartbeat>select user()</heartbeat>

     <!-- can have multi write hosts -->

     <writeHost host="masterHost1" url="172.20.0.2:3306" user="root"

             password="123456">

             <readHost host="slaveHost1" url="172.20.0.3:3306" user="root"

             password="123456"></readHost>

     </writeHost>

  </dataHost>

</mycat:schema>
相关推荐
2601_962189604 分钟前
深入浅出MySQL:概述与体系结构解析
数据库·mysql
Gain_chance9 分钟前
大数据毕业设计实战|Data Insight Platform:用 FastAPI + ClickHouse 打造低门槛全链路数据洞察平台
大数据·数据库·clickhouse·毕业设计·fastapi
harmony&1 小时前
ETCD 存储系统实战:从单节点部署到 Kubernetes 高可用集群
数据库·kubernetes·etcd
2601_962066491 小时前
【玩转全栈】----Django模板的继承
数据库·django·sqlite
一只小bit2 小时前
Redis哨兵机制、主从复制与集群搭建与维护
数据库·redis·bootstrap
zlwool9 小时前
图纸管理选型避坑指南
数据库·erp·设备erp·非标机械
小灰灰搞电子10 小时前
完全驾驭 Qt 与数据库:C++ ORM 框架 QxOrm 原理与实践指南
数据库·c++·qt
软件聚导航12 小时前
「聚小软 AI 助手」技术升级:从数据库检索到 RAG 知识库问答
前端·数据库·mysql·微信小程序·小程序·ai编程·rag
学习星球12 小时前
单调栈——从“找下一个更大的“到柱状图中的最大矩形
数据库·c++·算法·leetcode·xcode
GoppViper13 小时前
RDF资源描述框架深度解析:语义Web的数据基石与实战逻辑
前端·数据库