mysql 单表数据量多大_MySQL单表到底可以多大
前天突然收到Monitor Center发出来的报警:
PROBLEM:CN_DSL_***4/MAXFILE is CRITICAL,SNMP CRITICAL – *These File size is larger than 18932735283: /abc/def/ghi/***/***.MYD
刚看到这个报警的时候,还吓了一跳。数据文件超过最大文件限制?不会吧?好像才18G嘛,怎么会就开始报警了?
于是开始查找报警来源,经过一番查找,总算找到服务器来设计的。所以他们在mysql的“.MYD”和“.MYI”文件。
说到文件大小,刚好常有人问我说mysql是否有单个表的大小限制?限制多大呢?这里做一个简单的介绍吧。
在老版本的mysql 3.22中,mysql的单表限大小为4GB,当时的mysql的mysql 3.23开始,mysql单表最大限制就已经扩大到了64PB了(官方文档显示)。也就是说,从目前的技术环境来看,mysql数据库的MyISAM存储引擎单表大小限制已经不是有mysql数据库本身来决定,而是由所在主机的OS上面的文件系统来决定了。
而mysql另外一个最流行的存储引擎之一Innodb存储数据的策略是分为两种的,一种是共享表空间存储方式,还有一种是独享表空间存储方式。
当使用共享表空间存储方式的时候,Innodb的所有数据保存在一个单独的表空间里面,而这个表空间可以由很多个文件组成,一个表可以跨多个文件存在,所以其大小限制不再是文件大小的限制,而是其自身的限制。从Innodb的官方文档中可以看到,其表空间的最大限制为64TB,也就是说,Innodb的单表限制基本上也在64TB左右了,当然这个大小是包括这个表的所有索引等其他相关数据。
而当使用独享表空间来存放Innodb的表的时候,每个表的数据以一个单独的文件来存放,这个时候的单表限制,又变成文件系统的大小限制了。
以下是从收集到的一点信息,不一定全部准确:
操作系统 大小限制
win32 w/ FAT/FAT32 2GB/4GB
win32 w/ NTFS 2TB(可能更大)
Linux 2.2-Intel 32-bit 2GB (LFS: 4GB)
Linux 2.4+ 4TB(ext3)
Solaris 9/10 16TB
NetWare w/NSS filesystem 8TB
macOS X w/ HFS+ 2TB
以下是mysql文档中的内容:
Windows用户请注意: FAT和VFAT (FAT32)不适合mysql的生产使用。应使用NTFS。
在默认情况下,mysql创建的MyISAM表允许的最大尺寸为4GB。你可以使用SHOW TABLE STATUS语句或myisamchk -dv tbl_name检查表的最大尺寸。请参见13.5.4节,“SHOW语法”。
如果需要使用大于4GB的MyISAM表(而且你的操作系统支持大文件),可使用允许AVG_ROW_LENGTH和MAX_ROWS选项的CREATE TABLE语句。创建了表后,也可以使用ALTER TABLE更改这些选项,以增加表的最大允许容量。
mysql 单表数据量多大_MySQL单表到底可以多大相关推荐
- oracle单表数据量上亿_MySQL数据库中,数据量越来越大,有什么具体的优化方案么?...
个人的观点,这种大表的优化,不一定上来就要分库分表,因为表一旦被拆分,开发.运维的复杂度会直线上升,而大多数公司和开发人员是欠缺这种能力的. 所以MySQL中几百万甚至小几千万的表,先考虑做单表的优化 ...
- mysql查看比较大的数据表_mysql 如何查看哪些表数据量比较大
数据库中有几十上百张表,那么哪些表的数据量比较大呢,总不能一个表一个表的去查询吧,在mysql中也有类似于oracle的数据字典表,只不过mysql没有oracle记录的那么多和详细,但也足够我们查询 ...
- 面试官问单表数据量大一定要分库分表吗?我们用六个字和十张图回答
1 文章概述 在业务发展初期单表完全可以满足业务需求,在阿里巴巴开发手册也建议:单表行数超过500万行或者单表容量超过2GB才推荐进行分库分表,如果预计三年后数据量根本达不到这个级别,请不要在创建表时 ...
- 软件架构场景之—— 分表分库:单表数据量大读写缓慢如何解决?
业务背景 一个电商系统的架构优化,该系统中包含用户和订单 2 个主要实体,每个实体涵盖数据量如下表所示 实体 数据量 增长趋势 用户 上千万 每日十万 订单 上亿 每日百万级速度增长,之后可能是千万级 ...
- MySQL单表数据量过千万,采坑优化记录,完美解决方案
MySQL单表数据量过千万,采坑优化记录,完美解决方案 参考文章: (1)MySQL单表数据量过千万,采坑优化记录,完美解决方案 (2)https://www.cnblogs.com/ExMan/p/ ...
- 单表数据量过大处理策略
今天和一个朋友在讨论怎么样应对单表数据量过大,比如一些交易数据,每天都有10W的交易量.没有多久该表的查询,插入速度将变慢,最终将不可用. 对于关系数据库来说,应对单表数据量过大的策略大体上有两种. ...
- MySQL单表数据量超1亿,根据 索引列 批量删除数据
我的场景:MySQL8有个表数据量超1亿,然后我要根据某个例(一对多)删除数据, 我直接用:delete from 表 where 字段 in (select 其他表) 条件用in的方式执行报 ...
- mysql单张表数据量极限_极限数据量范围的安全测试
mysql单张表数据量极限 When we develop security testing within inconsistent data volume situations, we should ...
- mysql表数据量超过百万条了,count很慢。。
mysql表数据量超过百万条了,count很慢.. (15) mysql表数据量超过百万条了,count很慢.. - MySQL - 乐维UP mysql表数据量超过百万条了,count很慢.. ...
- 数据量大了一定要分表,分库分表 Sharding-JDBC 入门与项目实战
点击上方"方志朋",选择"设为星标" 回复"666"获取新整理的面试文章 来源:juejin.im/post/684490418236581 ...
最新文章
- java编程思想第四版第三章要点习题
- 大型网站典型故障案例分析
- (6) ebj学习:ejb使用jpa注解
- linux命令deploy_linux命令:du 命令
- 二叉树题目----4 前序遍历重构二叉树 AND 求二叉树中所有结点的个数
- ZOJ 3502	 Contest 状态压缩 概率 DP
- SpringMVC项目中中文字符乱码问题及解决办法总结(非专业最优解决办法) -- ajax传值乱码; request.getParameter()乱码;
- Nagios学习实践系列——配置研究[监控当前服务器]
- 关于前端惰性加载(jquery_lazyload)的使用和原理分析
- C++ setw() 函数
- 网易游戏笔试【2020暑期实习生】游戏研发工程师第二批在线笔试4月6日
- 微信服务器下载图片到服务器格式损坏问题解决
- 微软Google人才战主角首次开口:Google让我震撼(转)
- 历时两年,秘鲁四人调查团队发布反腐 AI
- VB 提示框MsgBox用法
- MySQL的锁到底有多少内容?和腾讯大佬的技术面谈,我真菜
- 深入理解操作系统实验——bomb lab(phase_3)
- 分布式系统三大指标:可扩展性、一致性、持久性
- 2022年中级会计中级经济学法考试复习题及答案
- IP对亚马逊测评自养号有多重要?