Mycat搭建分库分表

news2024/9/20 22:48:36
  • 分库分表解决的问题
    • 单表数据量过大带来的性能和存储容量的限制的问题:
      • 索引效率下降
      • 读写瓶颈
      • 存储容量限制
      • 事务性能问题
  • 分库分表架构

  • 再搭建一对主从复制节点,3307主节点,3309从节点
  • 配置数据源 dw1 , dr1,
  • 创建集群c1
  • 创建逻辑库  CREATE DATABASE clusterdb;
  • 创建广播表 BROADCAST代表广播表,意味着所有的数据源都会创建这张表

CREATE TABLE clusterdb.`dict_type` (

`id` int(11) unsigned NOT NULL AUTO_INCREMENT COMMENT '主键',

`type_id` int(11) NOT NULL COMMENT '业务类型id',

`name` varchar(255) DEFAULT NULL COMMENT '名称',

PRIMARY KEY (`id`) USING BTREE

)ENGINE=InnoDB  DEFAULT CHARSET=utf8 COMMENT='类型字典' BROADCAST;

  • 添加数据

INSERT INTO clusterdb.`dict_type` VALUES (1,1,'发货单');

INSERT INTO clusterdb.`dict_type` VALUES (2,2,'收货单');

INSERT INTO clusterdb.`dict_type` VALUES (3,3,'出库单');

INSERT INTO clusterdb.`dict_type` VALUES (4,4,'入库单');

INSERT INTO clusterdb.`dict_type` VALUES (5,5,'出室单');

INSERT INTO clusterdb.`dict_type` VALUES (6,6,'入室单');

  • 验证一下是否每个数据节点都有数据
  • 创建分片库表
    • 分库分片表就是把数据按照特定的算法,分配到不同的数据库表中,达到降低单表数据量过大导致的效率问题。

CREATE TABLE clusterdb.orders(

 `id` int(11) unsigned NOT NULL AUTO_INCREMENT COMMENT '主键',

 `order_type` int(11) NOT NULL COMMENT '业务类型id',

 `order_name` varchar(255) DEFAULT NULL COMMENT '名称',

      PRIMARY KEY (`id`) USING BTREE

    )ENGINE=INNODB DEFAULT CHARSET=utf8

    dbpartition BY mod_hash(id) tbpartition BY mod_hash(id)

    tbpartitions 1 dbpartitions 2;

 

INSERT into clusterdb.orders values(1,1,'test1');

INSERT into clusterdb.orders values(2,1,'test2');

INSERT into clusterdb.orders values(3,2,'test3');

INSERT into clusterdb.orders values(4,3,'test4');

INSERT into clusterdb.orders values(5,3,'test5');

INSERT into clusterdb.orders values(6,4,'test6');

INSERT into clusterdb.orders values(7,5,'test7');

INSERT into clusterdb.orders values(8,5,'test8');

INSERT into clusterdb.orders values(9,5,'test9');

INSERT into clusterdb.orders values(10,5,'test10');

 

  • 验证结果
    • 在mycat进行查询 select * from clusterdb.orders; 能得到全部的结果

  • 主节点1,自动创建clusterdb_0  orders_0  并且存放的是id偶数的数据

  • 主节点2,自动创建clusterdb_1  orders_1 并且存放的id是基数的数据

  • 到这里分库分表就成功啦~~

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2147074.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【AI小项目6】QLoRA针对资源受限设备上的大模型微调和文本分类任务的推理

目录 一、项目简介概述时间主要工作和收获技术栈数据集结果参考 二、训练阶段的完整代码什么是 QLoRA 微调?注意 安装库导入包配置定义一个Config类配置训练参数配置Lora 初始化分词器和模型数据预处理计算模型评估指标交叉验证划分数据集举例: 创建Trai…

Redis-分片集群

分片集群 主从和哨兵可以解决高可用、高并发读的问题。但是依然有两个问题没有解决: 海量数据存储问题 高并发写的问题 使用分片集群可以解决上述问题,如图: 分片集群特征: 集群中有多个master,每个master保存不同数据 每个ma…

Java-测试-Mockito 入门篇

之前很长一段时间我都认为测试就是使用SpringBootTest类似下面的写法&#xff1a; SpringBootTest class SysAuthServiceTest {AutowiredSysRoleAuthMapper sysRoleAuthMapper;Testpublic void test() {QueryWrapper<SysRoleAuth> queryWrapper new QueryWrapper<&g…

Linux命令:对文本文件的内容进行排序的工具sort详解

目录 一、概述 二、用法 1、 基本语法 2、 常用选项 3、获取帮助 三、示例 1. 基本用法 2. 按数字排序 3. 按第二列排序 4. 逆序排序 5. 删除重复行 6. 忽略大小写排序 7. 按人类可读的数值排序 8. 按版本号排序 四、高级用法 1. 与 uniq 结合使用去重 2. 与 gr…

1.使用 VSCode 过程中的英语积累 - File 菜单(每一次重点积累 5 个单词)

前言 学习可以不局限于传统的书籍和课堂&#xff0c;各种生活的元素也都可以做为我们的学习对象&#xff0c;本文将利用 VSCode 页面上的各种英文元素来做英语的积累&#xff0c;如此做有 3 大利 这些软件在我们工作中是时时刻刻接触的&#xff0c;借此做英语积累再合适不过&a…

不断挑战才有不断机遇!Eagle Trader等你来加入!

2024“Eagle Trader杯”全国职业交易联赛S1赛季已火热进行一个多月&#xff0c;吸引了超过355名交易员的积极参与&#xff01;目前&#xff0c;每天都有新的交易员踊跃报名参加&#xff01; 经过严格地交易考核&#xff0c;13名选手成功通过初试&#xff0c;正进入下一阶段的挑…

XILINX ZYNQ 7000 使用 FreeRTOS

XILINX 官方的SDK可以生成FreeRTOS 本文分为三个部分&#xff1a; 1.ZYNQ 7010 创建一个最小ZYNQ Processer系统&#xff0c;能够使用串口打印 2.使用SDK 创建一个FreeRTOS最小软件系统 3.浅析FreeRTOS最小软件系统 一&#xff1a;ZYNQ 7010 创建一个最小ZYNQ Processer系统&…

基于Linux系统离线安装oracle数据库

注意事项&#xff1a; 在安装的时候多次涉及root用户和oracle用户的切换&#xff0c;请注意区分&#xff0c;本文已明显 一、环境准备 1、关闭防火墙 [rootlocalhost ~]# systemctl stop firewalld2、 禁用NetworkManager服务&#xff08;非必须&#xff09; [rootlocalhost …

信号与线性系统实验四 离散系统的时域及变换域分析

文章目录 一、实验目的二、实验内容与原理三、实验器材四、实验步骤五、实验数据及结果分析第一部分&#xff1a;离散时间信号的时域基本运算第二部分&#xff1a; 离散LTI系统的时域分析第三部分&#xff1a;离散LTI系统Z域分析 六、实验结论七、其他(主要是心得体会) 一、实验…

通信工程学习:什么是PON无源光网络

PON&#xff1a;无源光网络 PON&#xff08;Passive Optical Network&#xff0c;无源光纤网络&#xff09;是一种采用光分路器等无源光器件进行信号传输和分配的光纤接入技术。它利用光纤作为传输媒介&#xff0c;通过无源设备将光信号从中心局&#xff08;如光线路终端OLT&am…

Linux基础4-进程1(操作系统,进程介绍,Linux进程相关命令,getpid,fork)

上篇文章&#xff1a;Linux基础3-基础工具4&#xff08;git&#xff09;&#xff0c;冯诺依曼计算机体系结构-CSDN博客 本章重点&#xff1a; 1. 操作系统简介 2. 什么是进程&#xff1f; 3. 在Linux使用命令查看进程&#xff08;ps&#xff09; 4. getpid&#xff0c;getppid,…

卷积和相关

卷积和相关是两种运算关系(或过程),都是含参变量的无穷积分。都是两个函数通过某种运算得到另外一个函数。 卷积运算: 可用来表示一个观测系统或一个观 测仪器对输入信号的作用过程等。 相关运算:常用来比较两个函数的关联性,相似程度,用于信号检测,图像识别。如:在混…

SCSAI平台面向对象建模技术的设计和实现(1)

SCSAI平台面向对象建模技术的设计和实现&#xff08;1&#xff09; 原创 团长团 AI智造AI编程 2024年09月19日 20:09 北京 用爱编程30年&#xff0c;倾心打造工业和智能智造软件研发平台SCSAI,用创新的方案、大幅的让利和极致的营销&#xff0c;致力于为10000家的中小企业实现…

【jupyter notebook】环境部署及pycharm连接虚拟机和本地两种方式

Python数据处理分析简介 Python作为当下最为流行的编程语言之一 可以独立完成数据分析的各种任务数据分析领域里有海量开源库机器学习/深度学习领域最热门的编程语言在爬虫&#xff0c;Web开发等领域均有应用 与Excel&#xff0c;PowerBI&#xff0c;Tableau等软件比较 Excel有…

双立方(三次)卷积插值

前言 图像处理中有三种常用的插值算法&#xff1a; 最邻近插值 双线性插值 双立方&#xff08;三次卷积&#xff09;插值 其中效果最好的是双立方&#xff08;三次卷积&#xff09;插值&#xff0c;本文介绍它的原理以及使用 如果想先看效果和源码&#xff0c;可以拉到最底…

【论文阅读笔记】YOLOv10: Real-Time End-to-End Object Detection

论文地址&#xff1a;https://arxiv.org/abs/2405.14458 文章目录 论文小结论文简介论文方法为NMS-free训练的一致性双标签分配双标签分配一致性匹配度量 效率-精度整体驱动的模型设计效率驱动模型设计轻量级分类检测头Spatial-channel 解耦下采样Rank-guided block design 精度…

Vue3中的Pinia——管理应用程序的全局状态

介绍Pinia Pinia 是 Vue.js 的状态管理库&#xff0c;主要用于管理应用程序的全局状态。它是 Vuex 的替代品&#xff0c;提供了更简单和更灵活的 API。Pinia 的主要作用包括&#xff1a; 1. 状态管理&#xff1a;Pinia 允许你在应用中集中管理状态&#xff0c;方便不同组件之…

微服务以及注册中心

一、什么是微服务 微服务是指开发一个单个小型的但有业务功能的服务&#xff0c;每个服务都有自己的处理和轻量通讯机制&#xff0c;可以部署在单个或多个服务器上。微服务也指一种松耦合的、有一定的有界上下文的面向服务架构。也就是说&#xff0c;如果每个服务都要同时修改…

Errorresponsefromdaemon:toomanyrequests:Youhavereachedyourpullratelimit.

Errorresponsefromdaemon:toomanyrequests:Youhavereachedyourpullratelimit.Youmayincreasethelimitbyauthenticatingandupgrading:https://www.docker.com/increase−rate−limit.See ′ dockerrun−−help 在拉取docker进行的时候遇到这个问题,如何解决呢?本文提供的解决方…

石英晶体谐振器:核心功能材料及其工作原理与应用

晶发电子专注17年晶振生产,晶振产品包括石英晶体谐振器、振荡器、贴片晶振、32.768Khz时钟晶振、有源晶振、无源晶振等&#xff0c;产品性能稳定,品质过硬,价格好,交期快.国产晶振品牌您值得信赖的晶振供应商。 石英晶体谐振器&#xff0c;又称为无源晶振&#xff0c;是现代电子…