Mysql中的单表最大记录是多少

吾爱主题 阅读:146 2023-02-21 13:40:00 评论:0

mysql单表最大记录数不能超过多少

其实mysql本身并没有对单表最大记录数进行限制,这个数值取决于你的操作系统对单个文件的限制本身。

从性能角度来讲,Mysql单表数据不要超过多少呢?

业界流传是500万行,超过500万行就要考虑分库分表了。

曾经在中国互联网技术圈广为流传着这么一个说法:Mysql单表数据量大于2000万行,性能会明显下降。事实上,这个传闻最早起大概是这样的,当年的DBA测试Mysql性能时发现,当单表的量在2000万行量级时,Sql操作的性能急剧下降,因此,结论由此传到业界的其他公司。所以就在业界流传开这么一个说法。

再后来,阿里巴巴《Java开发手册》提出单表行数超过500万行或者单表容量超过2GB,才推荐进行分库分表。

那么当单表容量超过500万行,查询效率下降后,我们可以如何应付呢?

有如下几种方式(来源于真实的企业):

  • 对于使用不多的表(外部依赖少,信息不重要),可以直接清除老表,数据归档到hbase(或类似的,大容量成本低的冷库)
  • 分库分表
  • 老表保留,旧数据归档(参考第一点)

mysql单表存储数据量有上限吗

在mysql中,每个数据库最多可创建20亿个表,

一个表允许定义1024列,

每行的最大长度为8092字节(不包括文本和图像类型的长度)。

当表中定义有varchar、nvarchar或varbinary类型列时,如果向表中插入的数据行超过8092字节时将导致Transact-SQL语句失败,并产生错误信息。

SQL Server对每个表中行的数量没有直接限制,但它受数据库存储空间的限制。

每个数据库的最大空间1048516TB,所以一个表可用的最大空间为1048516TB减去数据库类系属统表和其它数据库对象所占用的空间。

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持服务器之家。

原文链接:https://blog.csdn.net/GBS20200720/article/details/125344782

可以去百度分享获取分享代码输入这里。
声明

1.本站遵循行业规范,任何转载的稿件都会明确标注作者和来源;2.本站的原创文章,请转载时务必注明文章作者和来源,不尊重原创的行为我们将追究责任;3.作者投稿可能会经我们编辑修改或补充。

【腾讯云】云服务器产品特惠热卖中
搜索
标签列表
    关注我们

    了解等多精彩内容