mysql数据库中的表以几个文件保存在磁盘上?
2021/7/16 19:09:57
本文主要是介绍mysql数据库中的表以几个文件保存在磁盘上?,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
mysql数据库引擎有innodb,myisam等,innodb和myisam用的比较多。
myisam数据库引擎:
一张表会被保存成三个文件,索引文件,表结构文件,数据文件(保存每一条记录)
myisam数据库引擎下,一张表,根据id字段建立的是非聚族索引,是一个b+tree,叶子节点是索引和记录数据的地址。记录与索引保存在不用文件中。建立在其他字段上的索引是非聚族索引,叶子节点是索引和记录数据的地址。
innodb数据库引擎:
一张表可以被保存在一个文件中,这个文件操作系统不限制大小。
因为innodb数据库引擎下,一张表,根据id字段建立一个聚族索引,是一棵b+tree,叶子结点是索引和记录数据!记录就是跟索引在一块保存,所以不再有数据文件。建立在其他字段上的非聚族索引,是一颗b+tree,叶子结点是索引和记录id。
可以保存在多个文件中,每一个文件限制2G。
如果系统中一张表记录数据量达到一个亿,那么一定要分成多个文件保存聚族索引,根据分页技术保存。
对比两种数据库引擎:
myisam对于查询速度更快,因为文件较小,找到地址后,直接命中地址
indnnodb对于不是id=?这种的查询慢,因为文件较大,查询到id后还要查询聚族索引数树。而还是在这个文件里,可能有多个文件。
这篇关于mysql数据库中的表以几个文件保存在磁盘上?的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2025-01-02MySQL 3主集群搭建
- 2024-12-25如何部署MySQL集群资料:新手入门教程
- 2024-12-24MySQL集群部署资料:新手入门教程
- 2024-12-24MySQL集群资料详解:新手入门教程
- 2024-12-24MySQL集群部署入门教程
- 2024-12-24部署MySQL集群学习:新手入门教程
- 2024-12-24部署MySQL集群入门:一步一步搭建指南
- 2024-12-07MySQL读写分离入门:轻松掌握数据库读写分离技术
- 2024-12-07MySQL读写分离入门教程
- 2024-12-07MySQL分库分表入门详解