• 技术文章 >数据库 >mysql教程

    数据库怎么拆分表?

    清浅清浅2020-09-08 17:25:30原创12011

    数据库拆分表的方法:1、水平拆分,按照表中逻辑关系和相关条件把表拆分成多个分表;2、垂直拆分,按照不同的表来拆分到不同的数据库之上。

    php入门到就业线上直播课:进入学习

    随着数据的不断扩大,有的数据表的规模会以几何级增长,当数据达到一定规模时,数据的查询,读取性能就会变得缓慢,这时就需要拆分数据表,接下来在文章中将为大家详细介绍在数据库中怎么拆分表,希望对大家有所帮助。

    1.png

    【推荐课程:MySQL教程

    为什么需要拆分表

    当一个表的数据量很大时就比较耗时,这就需要对表进行拆分,把大表拆分成多个子表,那么在更新或者查询数据的时候,压力会分散到不同的表上。由于分表之后每个表的数据较小,不管是查询还是更新都极大的提高了速度,即使出现最坏的“锁表”的情况,那其他表还是可以并行使用。

    数据表的拆分

    数据表拆分可以分为两种形式,分别是水平切分和垂直切分

    水平拆分:根据表中数据的逻辑关系,将同一个表中的数据按照某种条件拆分到多台数据库(主机)上面,这种切分称之为数据的水平(横向)切分。

    垂直拆分:按照不同的表来拆分到不同的数据库(主机)之上,这种拆可以称之为数据的垂直(纵向)拆分

    水平拆分的方法

    一般情况下使用“取模”的形式来将数据进行表存储,如果用4张表就是id%4 结果会是0,1,2,3四种,user_0,user_1,user_2,user_3就够了。需要注意的是在这个过程中需要新建一张临时表,目的在于提供数据插入的自增id,得到自增id后再通过取模进行分表插入

    垂直拆分的方法

    把常用的字段放一个表,不常用的放一个表

    把字段比较大的比如text的字段拆出来放一个表里面

    使用的话是根据具体业务来拆,查询时使用多表联查,可以再配合redis存储

    总结:以上就是本篇文章的全部内容了,希望对大家有所帮助。

    以上就是数据库怎么拆分表?的详细内容,更多请关注php中文网其它相关文章!

    声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。

    前端(VUE)零基础到就业课程:点击学习

    清晰的学习路线+老师随时辅导答疑

    自己动手写 PHP MVC 框架:点击学习

    快速了解MVC架构、了解框架底层运行原理

    专题推荐:数据库 分表
    上一篇:web安全之如何防止SQL注入 下一篇:自己动手写 PHP MVC 框架(40节精讲/巨细/新人进阶必看)

    相关文章推荐

    • ❤️‍🔥共22门课程,总价3725元,会员免费学• ❤️‍🔥接口自动化测试不想写代码?• 3种mysql分表的方法• mysql数据库分库分表技术难点解决策略• 数据表的常见数据类型有哪些
    1/1

    PHP中文网