栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

springboot 2.0集成mycat 1.6 实现分库分表

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

springboot 2.0集成mycat 1.6 实现分库分表

小伙伴们,你们好,我是老寇

mycat安装包链接:https://pan.baidu.com/s/1swrV9ffJnmz4S0mfkuBbIw 
提取码:1111

目录

一、前提条件

二、mycat介绍

三、安装过程

 四、集成springboot

一、前提条件(开启主从复制,详情点点我)

jdk版本 : 1.8

主节点  : 192.168.1.1

从节点1: 192.168.1.2

从结点2: 192.168.1.3

二、mycat介绍

mycat是数据库中间件,说白了就是实现了mysql协议的server,一个mysql数据库代理

三、安装过程

1.解压安装包(解压到d:/mycat)

2.配置server.xml(不改数据库名可跳过)

	
		123456
		KCLOUDDB
		
		
		
	

	
		user
		KCLOUDDB
		true
	

3.配置schema.xml

分片规则sharding-by-murmur : 一致性hash算法有效解决了分布式数据的扩容问题

	
		
		
	
	
	
	
		select user()
		
		
			
			 
			 
		
		
		
		
	 

4.配置rule.xml(在文本上搜索'murmur')

	
		0
		3
		160
		weightMapFile 
		/etc/mycat/bucketMapPath 
			
	

5.启动mycat

在bin文件夹下双击startup_nowrap.bat

6.新建数据库(主节点执行)

CREATE DATAbase `db1` DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci;
CREATE DATAbase `db2` DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci;
CREATE DATAbase `db3` DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci;

7.新建表(主节点执行,db1db2db3都要执行)

DROP TABLE IF EXISTS `boot_resource`;
CREATE TABLE `boot_resource` (
  `id` varchar(64) NOT NULL COMMENT 'id',
  `title` varchar(200) NOT NULL COMMENT '名称',
  `author` varchar(100) NOT NULL DEFAULT 'admin' COMMENT '作者',
  `uri` varchar(500) NOT NULL COMMENT '地址',
  `status` tinyint(1) NOT NULL DEFAULT '0' COMMENT '审核状态(0待审核 10待签收 20待办理 30管理员审核 40超级管理审核 50审核通过)',
  `code` varchar(10) NOT NULL COMMENT '类型 audio音频 video视频  image图片 text文本 other其他',
  `status_desc` varchar(200) NOT NULL DEFAULT '待审核' COMMENT '状态说明',
  `code_desc` varchar(200) NOT NULL COMMENT '类型说明',
  `create_date` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
  `update_date` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '修改时间',
  `remark` longtext COMMENT '备注',
  `tags` longtext COMMENT '标签',
  PRIMARY KEY (`id`,`create_date`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 ROW_FORMAT=DYNAMIC
PARTITION BY RANGE ( UNIX_TIMESTAMP(`create_date`))
(PARTITION lk202110 VALUES LESS THAN (1633017600) ENGINE = InnoDB,
PARTITION lk202111 VALUES LESS THAN (1635696000) ENGINE = InnoDB,
PARTITION lk202112 VALUES LESS THAN (1638288000) ENGINE = InnoDB,
PARTITION lk202203 VALUES LESS THAN (1646064000) ENGINE = InnoDB,
PARTITION lk202204 VALUES LESS THAN (1648742400) ENGINE = InnoDB
);

INSERT INTO `boot_resource`(id,title,author,uri,`status`,`code`,status_desc,code_desc,create_date,update_date,remark,tags) VALUES ('1429355654328815617', '白月光与朱砂痣.mp3', 'admin', 'https://1.com/upload/node4/f906b6a282564c559632a1beeb449f5f.mp3', '50', 'audio', '审核通过', '音频', '2021-10-21 13:05:09', '2021-12-03 19:28:16', null, null);
INSERT INTO `boot_resource`(id,title,author,uri,`status`,`code`,status_desc,code_desc,create_date,update_date,remark,tags) VALUES ('1429355954762616834', '出山.mp3', 'admin', 'https://1.com/upload/node1/ebd577c32a8d448c8349af779d36110a.mp3', '50', 'audio', '审核通过', '音频', '2021-10-21 13:05:09', '2021-12-03 19:28:16', null, null);
INSERT INTO `boot_resource`(id,title,author,uri,`status`,`code`,status_desc,code_desc,create_date,update_date,remark,tags) VALUES ('1429355987293638657', '错位时空.mp3', 'admin', 'https://1.com/upload/node2/a673b6697e4142e5b24e5347b2b32fe8.mp3', '50', 'audio', '审核通过', '音频', '2021-10-21 13:05:09', '2021-12-03 19:28:16', null, null);
INSERT INTO `boot_resource`(id,title,author,uri,`status`,`code`,status_desc,code_desc,create_date,update_date,remark,tags) VALUES ('1429356071594954753', '稻香.mp3', 'admin', 'https://1.com/upload/node4/5874dacd9b9a499891cfce031f10d2c4.mp3', '50', 'audio', '审核通过', '音频', '2021-10-21 13:05:09', '2021-12-03 19:28:16', null, null);
INSERT INTO `boot_resource`(id,title,author,uri,`status`,`code`,status_desc,code_desc,create_date,update_date,remark,tags) VALUES ('1441610450502848513', '银河与星斗.mp3', 'admin', 'https://1.com/upload/node5/f96ff9b14ce94f8e8746ef8738614fcd.mp3', '50', 'audio', '审核通过', '音频', '2021-10-21 13:05:09', '2021-12-03 19:28:17', null, null);

 8.navicat连接mycat

默认开启8066端口,账号密码是server.xml配置的 

9.查询数据

 四、集成springboot

只需要修改application.yml

spring:
  datasource:
    druid:
      driver-class-name: com.mysql.jdbc.Driver
      url: jdbc:mysql://127.0.0.1:8066/TESTDB
      username: root
      password: 123456

大功告成 

转载请注明:文章转载自 www.mshxw.com
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号