| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> 大数据 -> MySQL进阶——存储引擎 -> 正文阅读 |
|
[大数据]MySQL进阶——存储引擎 |
目录 上篇文章我们学习了MySQL基础——事务,这篇文章学习MySQL进阶——存储引擎。 存储引擎存储引擎就是存储数据、建立索引、更新/查询数据等技术的实现方法。其基于表的,而不是基于库的,所以存储引擎也称为表类型。 在建表的时候,不指定存储引擎的话,就会使用默认的存储引擎InnoDB,执行如下代码查看之前建表语句:
如下图所示: 可以看到,该数据表的存储引擎为InnoDB。 在建表的时候,可以指定存储引擎,语法格式如下:
注意:在指定存储引擎之前,需要查询当前数据库支持的存储引擎,代码如下:
如下图所示: InnoDBInnoDB是一种兼顾高可靠性和高性能的通用存储引擎,在MySQL5.5之后,InnoDB是默认的MySQL存储引擎。 其主要特点有:
其存储的磁盘文件后缀为.ibd,InnoDB引擎的每张表都会对应这样一个表空间文件,存储该表的表结构(frm、sdi)、数据和索引。 参数有innodb_file_per_table,该参数决定是一张表对应一个表空间文件还是多个表共享一个表空间文件。 查看该参数代码如下:
如下图所示: 可以看到innodb_file_per_table的值为ON,这就说明一张表对应一个表空间文件。 InnoDB逻辑存储结构如下: 其中:TableSpece表空间、Segment段、Extent区(固定大小1M)、Page页(固定大小16k)、Row行。 MyISAMMyISAM是MySQL早期的默认存储引擎。 其主要特点:
在MyISAM涉及的磁盘空间文件后缀有:
MemoryMemory引擎的表数据是存储在内存中的,由于受到硬件问题、或断电问题的影响,只能将这些表作为临时表或缓存使用。 其主要特点有:
其文件后缀为sdi,该文件存储表结构信息。 选择在选择存储引擎之前,我们首先对比这三种存储引擎的特点,如下表:
存储引擎没有好坏之分,我们只需要根据系统特点选择合适的存储引擎,对于复杂的系统中,可以根据实际情况选择多种存储引擎进行组合。
好了,MySQL进阶——存储引擎就学到这里了,下篇文章学习MySQL进阶——索引(结构及分类)。 |
|
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
360图书馆 购物 三丰科技 阅读网 日历 万年历 2025年1日历 | -2025/1/16 1:47:04- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |