我是靠谱客的博主 欣喜小刺猬,最近开发中收集的这篇文章主要介绍MySQL——6.MySQL中的存储引擎介绍一、什么是存储引擎二、如何查看MySQL的存储引擎三、MySQL常用存储引擎及特点四、如何选择合适的存储引擎,觉得挺不错的,现在分享给大家,希望可以做个参考。
概述
目录
文章目录
- 一、什么是存储引擎
- 存储引擎就是指表的类型。数据库的存储类型决定了表在计算机中的存储方式。用户可以根据不同的存储方式、是否进行事务处理等来选择合适的存储引擎。
- 二、如何查看MySQL的存储引擎
- (一)查看MySQL支持的存储引擎:SHOW ENGINES
- 练习一、查看MySQL支持的存储引擎:SHOW ENGINES;
- 练习二、更美观的显示,加G,以网格形式展示:SHOW ENGINES G;
- support:就代表MySQL是否支持这种存储引擎,yes代表支持,no表示不支持
- comment:表示对这种存储引擎的评论或者注释
- Transactions:是否支持事务处理,yes是支持,no是不支持
- XA:是否是一个分布式的交易处理的XA规范,yes是支持,no是不支持
- Savepoints:是否支持保存点。yes表示支持,no表示不支持
- 我们默认的存储引擎是InnoDB
- (二)查看显示支持的存储引擎信息:SHOW VARIABLES LIKE'hava%'
- (三)查看默认的存储引擎:SHOW VARIABLES LIKE'storage_engine'(不好用)SHOW VARIABLES LIKE'%engine%'(好用)
- 三、MySQL常用存储引擎及特点
- (一)InnoDB存储引擎
- 特点:(1)主要是给MySQL提供了事务,包括回滚,包括修复能力和多版本并发控制的一个事务完全。(2)只有它支持外界约束。(3)它创建表的表结构存储在一个.fim的文件里。(4)数据和索引分别存储在innodbdatahomedr和innodbdatafilepass定义的表空间中
- 缺点:读取效率比较低,占取空间比较大
- (二)MyISAM存储引擎
- 特点 :(1)当我们用MyISAM引擎创建表的时候,要把我们的表存储成三个文件,文件的名字和表名相同,分别是fim,mid和mii。fim是存储表结构的,fid是存储我们的数据的,fii是存储我们的索引的。(2)基于我们MyISAM存储引擎的表支持三种不同的存储格式,分别是静态型(默认存储格式,字段是固定长度的),动态型(包含我们的变长字段,字段的长度是不固定的)和压缩型(用MyISAM的apache工具创建,它占用的磁盘就比较小)
- 优点:占用磁盘空间小,处理速度块,插入读取数据快
- 缺点:不支持事务。没有事务的完整性,安全性以及事务的并发性处理
- (三)MEMORY存储引擎
- 特点:(1)存储在内存中的内容来创建表,而且所有的数据也存放到我们的内存中(速度快)(2)基于MEMORY存储引擎的表实际对应于一个磁盘文件,文件名也和表名相同,类型也是fim类型。但是这个文件中只存储表的结构,数据存储到内存中,这有利于对数据快速的处理。它可以提高表的速率。(3)服务器需要足够的内存来维持引擎的使用,使用完释放掉
- 缺点:如果意外断电或者出现异常,就可能影响数据的完整性。安全性不高,生命周期比较短,一次最好。不能建立太大的表
- 四、如何选择合适的存储引擎
一、什么是存储引擎
存储引擎就是指表的类型。数据库的存储类型决定了表在计算机中的存储方式。用户可以根据不同的存储方式、是否进行事务处理等来选择合适的存储引擎。
二、如何查看MySQL的存储引擎
(一)查看MySQL支持的存储引擎:SHOW ENGINES
练习一、查看MySQL支持的存储引擎:SHOW ENGINES;
练习二、更美观的显示,加G,以网格形式展示:SHOW ENGINES G;
support:就代表MySQL是否支持这种存储引擎,yes代表支持,no表示不支持
comment:表示对这种存储引擎的评论或者注释
Transactions:是否支持事务处理,yes是支持,no是不支持
XA:是否是一个分布式的交易处理的XA规范,yes是支持,no是不支持
Savepoints:是否支持保存点。yes表示支持,no表示不支持
我们默认的存储引擎是InnoDB
(二)查看显示支持的存储引擎信息:SHOW VARIABLES LIKE’hava%’
(三)查看默认的存储引擎:SHOW VARIABLES LIKE’storage_engine’(不好用)SHOW VARIABLES LIKE’%engine%’(好用)
三、MySQL常用存储引擎及特点
有了这些存储引擎,建表的时候就可以用engine指定使用的存储引擎。
不同的表可以用不同的存储引擎。
涉及到以后优化或者业务逻辑的时候,就要选择合适的存储引擎。
(一)InnoDB存储引擎
特点:(1)主要是给MySQL提供了事务,包括回滚,包括修复能力和多版本并发控制的一个事务完全。(2)只有它支持外界约束。(3)它创建表的表结构存储在一个.fim的文件里。(4)数据和索引分别存储在innodbdatahomedr和innodbdatafilepass定义的表空间中
缺点:读取效率比较低,占取空间比较大
(二)MyISAM存储引擎
特点 :(1)当我们用MyISAM引擎创建表的时候,要把我们的表存储成三个文件,文件的名字和表名相同,分别是fim,mid和mii。fim是存储表结构的,fid是存储我们的数据的,fii是存储我们的索引的。(2)基于我们MyISAM存储引擎的表支持三种不同的存储格式,分别是静态型(默认存储格式,字段是固定长度的),动态型(包含我们的变长字段,字段的长度是不固定的)和压缩型(用MyISAM的apache工具创建,它占用的磁盘就比较小)
优点:占用磁盘空间小,处理速度块,插入读取数据快
缺点:不支持事务。没有事务的完整性,安全性以及事务的并发性处理
(三)MEMORY存储引擎
特点:(1)存储在内存中的内容来创建表,而且所有的数据也存放到我们的内存中(速度快)(2)基于MEMORY存储引擎的表实际对应于一个磁盘文件,文件名也和表名相同,类型也是fim类型。但是这个文件中只存储表的结构,数据存储到内存中,这有利于对数据快速的处理。它可以提高表的速率。(3)服务器需要足够的内存来维持引擎的使用,使用完释放掉
缺点:如果意外断电或者出现异常,就可能影响数据的完整性。安全性不高,生命周期比较短,一次最好。不能建立太大的表
四、如何选择合适的存储引擎
最后
以上就是欣喜小刺猬为你收集整理的MySQL——6.MySQL中的存储引擎介绍一、什么是存储引擎二、如何查看MySQL的存储引擎三、MySQL常用存储引擎及特点四、如何选择合适的存储引擎的全部内容,希望文章能够帮你解决MySQL——6.MySQL中的存储引擎介绍一、什么是存储引擎二、如何查看MySQL的存储引擎三、MySQL常用存储引擎及特点四、如何选择合适的存储引擎所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复