news 2026/6/13 9:12:28

MySQL数据库分库分表介绍

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
MySQL数据库分库分表介绍

为什么要分库分表?

当数据海量时,数据库的压力很大,会成为系统运行的瓶颈。

从数据库角度入手改造,那就涉及到分库分表。

什么是分库?

分库是将原来在一个数据库实例上的不同库,拆开,变成多个数据库实例。举例:

在一台服务器上,安装了MySQL,创建了三个数据库,分别是商品库、订单库、财务库。

这三个数据库,都运行在一台服务器的MySQL实例中。

分库就是将这三个数据库,拆开,放到三台服务器上,每台服务器都安装MySQL,只创建一个库。如下图:

Node就是指不同的服务器。

通过这种方式,可以缓解单台服务器的压力,把压力分摊到三台服务器。

什么是分表?

比如:数据库中的商品表,表数据量很大,有三千万条记录,查询很慢。

然后有三台服务器,三台服务器上都安装MySQL,都创建商品库,商品库中创建商品表。通过把商品表的三千万条记录拆成三份,每份一千万条记录。把三千万条数据平摊到这三台服务器上进行存储。

如上图所示,商品表1、商品表2、商品表3,每张表存储一千万条记录。

怎么实现分库分表?

问题来了,有了分库分表的想法,如何实现呢?

这就要借助分库分表中间件来完成。

目前常见的分库分表中间件有以下几种:

综合来看,目前比较活跃,还在更新维护,且开源,支持的数据库种类最多的中间件是shardingsphere。它是一款分布式 SQL 事务和查询引擎。

官方文档:

https://shardingsphere.apache.org/index_zh.html

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/6/12 8:49:25

vue基于Spring Boot的 水果草莓采摘园基地预约管理系统_2tb6x8l7

目录具体实现截图项目介绍论文大纲核心代码部分展示项目运行指导结论源码获取详细视频演示 :文章底部获取博主联系方式!同行可合作具体实现截图 本系统(程序源码数据库调试部署讲解)同时还支持java、ThinkPHP、Node.js、Spring B…

作者头像 李华
网站建设 2026/6/11 23:31:25

Linux系统如何安装哔哩哔哩客户端?完整解决方案指南

Linux系统如何安装哔哩哔哩客户端?完整解决方案指南 【免费下载链接】bilibili-linux 基于哔哩哔哩官方客户端移植的Linux版本 支持漫游 项目地址: https://gitcode.com/gh_mirrors/bi/bilibili-linux 想在Linux系统上畅享哔哩哔哩的精彩内容吗?本…

作者头像 李华
网站建设 2026/6/12 10:38:53

java反序列化漏洞解析+URLDNS利用链分析

一些基本的概念为什么要序列化?1.数据持久化2.远程传输3.缓存 提高访问速度什么样的数据可以进行序列化?被序列化的类必须属于 Enum、Array 和 Serializable 类型其中的任何⼀种,否则将抛出NotSerializableException 异常序列化:把…

作者头像 李华
网站建设 2026/6/12 16:38:30

5分钟掌握跨平台硬件信息采集:hwinfo库的实用指南

5分钟掌握跨平台硬件信息采集:hwinfo库的实用指南 【免费下载链接】hwinfo cross platform C library for hardware information (CPU, RAM, GPU, ...) 项目地址: https://gitcode.com/gh_mirrors/hw/hwinfo 想要快速获取计算机的CPU、内存、显卡等硬件信息&…

作者头像 李华
网站建设 2026/6/13 5:30:16

GEO:让品牌从“被搜到”升级为“被AI 默认推荐”

老板在会上被问懵,答案竟是“AI 默认推荐”昨晚开经营会,老板被同事问了三个问题:“用户在AI里问‘怎么选’‘预算多少合适’时,AI 会不会想到我们?”“为什么我们内容不少,但AI的回答里总是同行&#xff1…

作者头像 李华