Mycat使用--分库分表和读写分离
时间:2019-11-19
本文章向大家介绍Mycat使用--分库分表和读写分离,主要包括Mycat使用--分库分表和读写分离使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。
Mycat使用--分库分表和读写分离
分库分表
具体操作参看: https://blog.csdn.net/vbirdbest/article/details/83448757 我个人觉得写得非常好,兄嘚~优秀!!!
下边针对部署过程中出现的问题说一下自己的感受
1. 模拟多数据库节点
方法1
安装虚拟机,安装多个linux,然后在每台虚拟机上安装mysql,生产适用,个人操作难度较大
方法2
使用docker安装多个mysql,简单方便适合学习
方法3
在一个mysql中,使用多个数据库来模拟即可.只为学习,部署环境就越简单越好
2. 配置文件
核心配置文件有3个: rule.xml
server.xml
schema.xml
,主要修改最后一个,看一下我的基本配置:
<?xml version="1.0"?>
<!DOCTYPE mycat:schema SYSTEM "schema.dtd">
<mycat:schema xmlns:mycat="http://io.mycat/">
<!-- Mycat虚拟数据库 -->
<schema name="TESTDB" checkSQLschema="false" sqlMaxLimit="100">
<!-- Mycat虚拟表 表名 物理节点 路由规则 -->
<table name="tbl_order" dataNode="dn1,dn2,dn3" rule="mod-long"/>
</schema>
<!-- 节点 -->
<dataNode name="dn1" dataHost="localhost1" database="db1" />
<dataNode name="dn2" dataHost="localhost1" database="db2" />
<dataNode name="dn3" dataHost="localhost1" database="db3" />
<!-- 节点信息配置 -->
<dataHost name="localhost1" maxCon="1000" minCon="10" balance="0"
writeType="0" dbType="mysql" dbDriver="native" switchType="1" slaveThreshold="100">
<heartbeat>select user()</heartbeat>
<!-- 写配置 -->
<writeHost host="hostM1" url="localhost:3306" user="root" password="123456"></writeHost>
<!-- 读配置 -->
<!-- <readHost host="hostS2" url="192.168.1.200:3306" user="root" password="xxx" /> -->
</dataHost>
</mycat:schema>
说明一下:
-
rule="mod-long"
rule配置分片规则,Mycat有很多算法,默认是auto-sharding-long
根据范围进行路由,比如110是dn1,1120是dn2,21~30是dn3(一开始用默认的,数据比较少看不到效果,还以为配错了);mod-long
根据id路由,比如1是dn1,2是dn2,3是dn3,4是dn1,一次类推 -
默认端口
8066
数据管理端口9066
-
运行Mycat前,系统要安装jdk
原文地址:https://www.cnblogs.com/linyufeng/p/11890749.html
- 用AutoHotKey建立自己的便签本
- Flash/Flex学习笔记(14):制作涂鸦板
- 页面布局的一些心得
- Linux下的计算命令和求和、求平均值、求最值命令梳理
- 网卡自适应带来的麻烦
- silverlight:手写板/涂鸦/墨迹/InkPresenter示例程序
- Linux下日志文件监控系统Logwatch的使用记录
- .net中使用oracle数据库分页的土办法
- 图表的一些资源
- 删除文件后,磁盘空间没有释放的处理记录
- silverlight:ListBox中如何取得DateTemplate/ItemsPanelTemplate中的命名控件?
- 表格效果2
- Linux终端复用神器-Tmux使用梳理
- 程序实现下载文件或者打开文件
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法
- TKE部署ES如何配置参数vm.max_map_count
- Jquery validate remote 验证数据唯一
- MySQL 案例:乱码,字符集与错入错出的 MySQL
- Jenkins常用插件Copy Artifact的使用
- 聊聊dubbo-go的roundRobinLoadBalance
- 腾讯云录音文件识别请求和结果查询
- 【Kubernetes】kubectl top 如何使用
- js数组方法,常用数组Api的基本使用
- java jsp实现网络考试系统(mysql)
- 实操:数据万象语音转文字
- python智能图片识别系统(图片切割、图片识别、区别标识)
- 【Kubernetes】部署 metrics-server 后无法使用 top 命令
- 使用java计算数组方差和标准差
- jzy3D从入门到弃坑_2 使用jzy3D0.9画2D散点图
- jzy3D从入门到弃坑_3 使用jzy3D0.9画2D散点图--多条线条