搜索
查看
编辑修改
首页
UNITY
NODEJS
PYTHON
AI
GIT
PHP
GO
CEF3
JAVA
HTML
CSS
搜索
繁依Fanyi0
这个屌丝很懒,什么也没留下!
关注作者
热门标签
jquery
HTML
CSS
PHP
ASP
PYTHON
GO
AI
C
C++
C#
PHOTOSHOP
UNITY
iOS
android
vue
xml
爬虫
SEO
LINUX
WINDOWS
JAVA
MFC
CEF3
CAD
NODEJS
GIT
Pyppeteer
article
热门文章
1
第六章:计算机视觉大模型实战6.3 图像分割与生成6.3.2 生成对抗网络(GAN)基础
2
二、CentOS基础配置(1.网络与包管理)
3
Linux下 VScode以sudo/root权限运行的最新方法_vscode root
4
检测到远端X服务正在运行中(CVE-1999-0526)漏洞解决
5
分享10个ai人工智能ppt生成软件,一键轻松搞定PPT制作!_ai智能ppt制作软件
6
【华为OD机试真题 2022&2023】真题目录 已支持(C++&Java&python)100%通过率_华为od机试2022&2023(c++java js py)
7
day03 51单片机
8
spring boot 集成websocket + netty_netty-websocket-spring-boot-starter 与springboot集成
9
基于智能家居c语言程序代码,基于单片机的智能家居系统设计(附程序代码)
10
欧拉角微简介_欧拉角单位
当前位置:
article
> 正文
基于Mycat的多租户分库方案_mycat 多租户
作者:繁依Fanyi0 | 2024-04-11 20:59:00
赞
踩
mycat 多租户
方案一:
租户共享MyCat中的schema,schema中的表会跨越多个datanode,因此每个表应该指定primary key, sharding rule可以解析primary key中包含的租户code,从而进一步确定每个租户对应的datanode.这就要求每个表的主键生成必须要主键生成器来生成(key generator),主键生成器要满足以下要求:
主键生成效率高
生成的主键全局无冲突
生成的主键要包含租户code信息,并可被反向解析出来
方案二:
每个租户独占MyCat中的一个schema,schema的表不会跨datanode,类似的拓扑如下:
MyCat核心配置:
server.xml
<user name="root">
<property name="password">password</property>
<property name="schemas">
GLOBALDB,JG1DB,JG2DB,JG3DB,JG4DB,JG5DB
</property>
</user>
2. schema.xml
<?xml version="1.0"?>
<!DOCTYPE mycat:schema SYSTEM "schema.dtd">
<mycat:schema xmlns:mycat="http://io.mycat/">
<schema name="GLOBALDB" checkSQLschema="false" sqlMaxLimit="100">
<!-- global table is auto cloned to all defined data nodes ,so can join
with any table whose sharding node is in the same data node -->
<table name="orgmapping" primaryKey="id" type="global" dataNode="gdn" />
</schema>
<schema name="JG1DB" checkSQLschema="false" sqlMaxLimit="100">
<table name="user" primaryKey="id" autoIncrement="true" dataNode="jg1dn" />
<table name="user_order" primaryKey="id" autoIncrement="true" dataNode="jg1dn" />
</schema>
<schema name="JG2DB" checkSQLschema="false" sqlMaxLimit="100">
<table name="user" primaryKey="id" autoIncrement="true" dataNode="jg2dn" />
<table name="user_order" primaryKey="id" autoIncrement="true" dataNode="jg2dn" />
</schema>
<schema name="JG3DB" checkSQLschema="false" sqlMaxLimit="100">
<table name="user" primaryKey="id" autoIncrement="true" dataNode="jg3dn" />
<table name="user_order" primaryKey="id" autoIncrement="true" dataNode="jg3dn" />
</schema>
<schema name="JG4DB" checkSQLschema="false" sqlMaxLimit="100">
<table name="user" primaryKey="id" autoIncrement="true" dataNode="jg4dn" />
<table name="user_order" primaryKey="id" autoIncrement="true" dataNode="jg4dn" />
</schema>
<schema name="JG5DB" checkSQLschema="false" sqlMaxLimit="100">
<table name="user" primaryKey="id" autoIncrement="true" dataNode="jg5dn" />
<table name="user_order" primaryKey="id" autoIncrement="true" dataNode="jg5dn" />
</schema>
<dataNode name="gdn" dataHost="globalhost" database="wymglobal" />
<dataNode name="jg1dn" dataHost="g1host" database="jg1" />
<dataNode name="jg2dn" dataHost="g1host" database="jg2" />
<dataNode name="jg3dn" dataHost="g2host" database="jg3" />
<dataNode name="jg4
声明:
本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:
https://www.wpsshop.cn/w/繁依Fanyi0/article/detail/407411
推荐阅读
article
分库分表
中间件
-
Mycat
...
MyCat笔记一、MyCat简介
Mycat
是一个开源的分布式数据库系统,但是由于真正的数据库需要存储引擎,而 Myca...
赞
踩
article
SpringBoot
整合
mycat
分库、
分表
_
springboot
mycat
...
背景系统开发中,数据库是非常重要的一个点。除了程序的本身的优化,如:SQL语句优化、代码优化,数据库的处理本身优化也是非...
赞
踩
article
MyCat
_sqlserver
mycat
...
目录前言1.海量存储问题1.1 背景描述1.2 分库分表1.2.1 什么是分库分表1.2.2 分库分表的方式1.2.2....
赞
踩
article
mybaits
plus
+
mycat
+
sql
server
2008 分页的一些坑,做记录_myca...
1、
mybaits
plus
是依据连接的url 来判断数据库方言的,当使用
mycat
的时,
mybaits
plus
会...
赞
踩
article
mycat
+
sqlServer
简单
demo
配置_
mycat
连接
sqlserver
dbo...
1.Mycat介绍Mycat 是一个开源的分布式数据库系统,是一个实现了 MySQL 协议的的Server,前端用户可以...
赞
踩
article
MyCat入门_
sqlserver
mycat
...
一、
mycat
介绍目前最流行的分布式数据库中间插件,能满足数据库大量存储,提高查询性能。二、Mycat架构前端用户可以把...
赞
踩
article
【
Mycat
2】详解
分库
分表
设计方案
及实操测试(二)_
mycat
分表
不
分库
...
前一篇的续文。- 修改了标题编号。_
mycat
分表
不
分库
mycat
分表
不
分库
...
赞
踩
article
【
Mycat
2】详解
分库
分表
设计方案
及实操
测试
(一)_
分库
分表
实操...
详解
Mycat
2
分库
分表
。- 修正了标题格式错误。_
分库
分表
实操
分库
分表
实操 ...
赞
踩
article
MyCat
垂直
分片和水平拆分_
mycat
水平
分表
和
垂直
分表
...
MyCat
垂直
分片和水平拆分_
mycat
水平
分表
和
垂直
分表
mycat
水平
分表
和
垂直
分表
一、垂...
赞
踩
article
【
mycat
】
mycat
搭建
读写
分离_
unknown
target
:
prototype
...
通过Mycat和MySQL的主从复制配合
搭建
数据库的
读写
分离,实现MySQL的高可用性。我们将
搭建
一主一从、双主双从两种...
赞
踩
article
MyCat
注解 详解_
mycat
注解...
MyCat
对自身不支持的 SQL 语句提供一种解决方案——在要执行的 SQL 语句前添加额外的一段由注解。SQL 组织...
赞
踩
article
Mycat
(五) ——
MyCat
注解_/*!
mycat
:
sql
= 语法...
一.配置流程 1.在schema.xml文件中添加
[详细]
-->
赞
踩
article
mycat
的
使用_
mycat
特殊
语句
...
不支持语法select跨分片
的
交叉查询,两个表中
的
分片字段不同跨结点
的
联合查询insert插入
的
字段不包含分片字段插入
的
...
赞
踩
article
分库分表篇-
2.1
Mycat
-
配置文件
篇_
mycat
配置文件
...
在安装
Mycat
后,我们怎么连到
Mycat
,怎么配置数据库和表及其路由规则,本文对此进行说明。提示:以下是本篇文章正...
赞
踩
article
快速学习-
Mycat
注解
...
第 5 章
Mycat
注解
5.1
注解
原理概念:MyCat 对自身不支持的 Sql 语句提供了一种解决方案——在要执行...
赞
踩
article
MyCat
笔记(七):
Mycat
注解
_
mycat
:db_
type
=master...
Mycat
不支持的SQL语句:1) 某些SQL语法,如insert into......select.....2) 跨库...
赞
踩
article
MyCat
学习笔记 第十三篇.数据分片 之 通过
HINT
执行
存储
过程
_
procedure
hint
...
1 环境说明VM 模拟3台MYSQL 5.6 服务器 VM1 192.168.31.187:3307 VM2 1...
赞
踩
article
mycat
mysql
多
租户
_
MyBatis
使用
MyCat
实现
多
租户
的一种简单思路...
本文的
多
租户
是基于
多
数据库进行实现的,数据是通过不同数据库进行隔离。
MyCat
基本配置首先针对
多
租户
配置了
多
个数据库,...
赞
踩
article
Mycat
多
租户
方案_
tenantcontext
...
Mycat
多
租户
方案1、需求 1、1 需求图 1、2 环境说明 环境说明: 2 每
租户
一逻辑库方案 2.1实现思想 ...
赞
踩
article
mycat
mysql
多
租户
_
采用
MyCAT
的
多
租户
方案 - 按
切分
函数路由...
1. 创建物理库以root账号登录mariaDB, 创建三个schema: db
_
10001、db
_
10013、db
_
1...
赞
踩
相关标签
数据库
分布式
mysql
java
spring
sql
sqlserver
mybatis
mycat
sqlServer
mycat 2
分库分表
sharding