mysql有哪些数据库引擎

执行如下指令查看所有mysql所有的存储引擎

mysql有哪些数据库引擎

mysql有哪些数据库引擎

InnoDB存储引擎

InnoDB是事务型数据库的首选引擎,支持事务安全表(ACID),支持行锁定和外键,上图也看到了,InnoDB是默认的MySQL引擎。InnoDB主要特性有:

1、InnoDB给MySQL提供了具有提交、回滚和崩溃恢复能力的事物安全(ACID兼容)存储引擎。InnoDB锁定在行级并且也在SELECT语句中提供一个类似Oracle的非锁定读。这些功能增加了多用户部署和性能。在SQL查询中,可以自由地将InnoDB类型的表和其他MySQL的表类型混合起来,甚至在同一个查询中也可以混合

2、InnoDB是为处理巨大数据量的最大性能设计。它的CPU效率可能是任何其他基于磁盘的关系型数据库引擎锁不能匹敌的

3、InnoDB存储引擎完全与MySQL服务器整合,InnoDB存储引擎为在主内存中缓存数据和索引而维持它自己的缓冲池。InnoDB将它的表和索引在一个逻辑表空间中,表空间可以包含数个文件(或原始磁盘文件)。这与MyISAM表不同,比如在MyISAM表中每个表被存放在分离的文件中。InnoDB表可以是任何尺寸,即使在文件尺寸被限制为2GB的操作系统上

4、InnoDB支持外键完整性约束,存储表中的数据时,每张表的存储都按主键顺序存放,如果没有显示在表定义时指定主键,InnoDB会为每一行生成一个6字节的ROWID,并以此作为主键

5、InnoDB被用在众多需要高性能的大型数据库站点上

InnoDB不创建目录,使用InnoDB时,MySQL将在MySQL数据目录下创建一个名为ibdata1的10MB大小的自动扩展数据文件,以及两个名为ib_logfile0和ib_logfile1的5MB大小的日志文件

MyISAM存储引擎

MyISAM基于ISAM存储引擎,并对其进行扩展。它是在Web、数据仓储和其他应用环境下最常使用的存储引擎之一。MyISAM拥有较高的插入、查询速度,但不支持事物。MyISAM主要特性有:

1、大文件(达到63位文件长度)在支持大文件的文件系统和操作系统上被支持

2、当把删除和更新及插入操作混合使用的时候,动态尺寸的行产生更少碎片。这要通过合并相邻被删除的块,以及若下一个块被删除,就扩展到下一块自动完成

3、每个MyISAM表最大索引数是64,这可以通过重新编译来改变。每个索引最大的列数是16

4、最大的键长度是1000字节,这也可以通过编译来改变,对于键长度超过250字节的情况,一个超过1024字节的键将被用上

5、BLOB和TEXT列可以被索引

6、NULL被允许在索引的列中,这个值占每个键的0~1个字节

7、所有数字键值以高字节优先被存储以允许一个更高的索引压缩

8、每个MyISAM类型的表都有一个AUTO_INCREMENT的内部列,当INSERT和UPDATE操作的时候该列被更新,同时AUTO_INCREMENT列将被刷新。所以说,MyISAM类型表的AUTO_INCREMENT列更新比InnoDB类型的AUTO_INCREMENT更快

9、可以把数据文件和索引文件放在不同目录

10、每个字符列可以有不同的字符集

11、有VARCHAR的表可以固定或动态记录长度

12、VARCHAR和CHAR列可以多达64KB

使用MyISAM引擎创建数据库,将产生3个文件。文件的名字以表名字开始,扩展名之处文件类型:frm文件存储表定义、数据文件的扩展名为.MYD(MYData)、索引文件的扩展名时.MYI(MYIndex)

MEMORY存储引擎

MEMORY存储引擎将表中的数据存储到内存中,未查询和引用其他表数据提供快速访问。MEMORY主要特性有:

1、MEMORY表的每个表可以有多达32个索引,每个索引16列,以及500字节的最大键长度

2、MEMORY存储引擎执行HASH和BTREE缩影

3、可以在一个MEMORY表中有非唯一键值

4、MEMORY表使用一个固定的记录长度格式

5、MEMORY不支持BLOB或TEXT列

6、MEMORY支持AUTO_INCREMENT列和对可包含NULL值的列的索引

7、MEMORY表在所由客户端之间共享(就像其他任何非TEMPORARY表)

8、MEMORY表内存被存储在内存中,内存是MEMORY表和服务器在查询处理时的空闲中,创建的内部表共享

9、当不再需要MEMORY表的内容时,要释放被MEMORY表使用的内存,应该执行DELETE FROM或TRUNCATE TABLE,或者删除整个表(使用DROP TABLE)

存储引擎的选择

mysql有哪些数据库引擎

如果要提供提交、回滚、崩溃恢复能力的事物安全(ACID兼容)能力,并要求实现并发控制,InnoDB是一个好的选择

如果数据表主要用来插入和查询记录,则MyISAM引擎能提供较高的处理效率

如果只是临时存放数据,数据量不大,并且不需要较高的数据安全性,可以选择将数据保存在内存中的Memory引擎,MySQL中使用该引擎作为临时表,存放查询的中间结果

如果只有INSERT和SELECT操作,可以选择Archive,Archive支持高并发的插入操作,但是本身不是事务安全的。Archive非常适合存储归档数据,如记录日志信息可以使用Archive

使用哪一种引擎需要灵活选择,一个数据库中多个表可以使用不同引擎以满足各种性能和实际需求,使用合适的存储引擎,将会提高整个数据库的性能

本文【mysql有哪些数据库引擎】由作者: 自旋锁 提供,本站不拥有所有权,只提供储存服务,如有侵权,联系删除!
本文链接:https://www.cuoshuo.com/blog/4121.html

(0)
上一篇 2023-03-09 08:03:43
下一篇 2023-03-09 08:11:01

相关推荐

  • 动态链接库dll初始化失败怎么弄

    首先在本机上安装了solid works软件,打开出现这样的情况,可以尝试重新启动在打开,还是没有效果的话不要慌张,这样的小问题是可以解决的! 不管是重启还是修复等一系列解决方法都没有解决的话,不妨试试我的解决方法吧! 不敢保证每个人都可以解决类似问题,但本人就是这样解决的 好了,不废话了,看下面的解决方法吧! 1:打开i控制面板上的电源选项 2:进入到选择…

    2023-03-09
    500
  • asp编程教程 java可视化界面编程

    经典 ASP – Active Server Pages(动态服务器页面) ASP ,全称 Active Server Pages(动态服务器页面),也被称为经典 ASP ,是在1998年作为微软的第一个服务器端脚本引擎推出的。 ASP 是一种使得网页中的脚本在因特网服务器上被执行的技术。 ASP 页面的文件扩展名是 .asp ,通常是用 VBS…

    2023-03-20
    000
  • JAVA课程设计报告简单(java课程设计实验报告)

    我是来自山东大学物联网专业的一名大三学生,今天分享一份Java实验报告供大家参考: 信息科学与工程学院 2021-2022学年第一学期 实 验 报 告 课程名称: Java编程技术 实验名称: 编写简单的控制台程序 专 业 班 级: 物 联 网 学 生 学 号: 20190012**** 学 生 姓 名: 朱凯 实 验 时 间: 2021年9月 15日 实验…

    2023-03-17
    100
  • 快速启动栏显示桌面怎么设置(快速启动栏显示桌面不见了)

    软件版本: 软件大小: 软件授权: 适用平台: http://dl.pconline.com.cn/download/821476.html XP系统下如何解决快速启动图标消失的问题 依次单击“开始”,“运行”,在运行对话框中输入regsvr32 /n /i:u shell32.dll,按回车键 弹出“shell32.dll中的DllInstall成功”的窗…

    2023-03-19
    100
  • 数据库备份sql语句_sql语句在哪里写

    前言: 备份乃不死之王! 一、全表结构备份: SELECT INTO 语句:表示从一个表中选取数据,然后把数据插入另一个表中,常用来备份一张表 INSERT INTO new_table_name SELECT * FROM old_tablename;示例:备份student表,备份表取名为student_backup insert into studen…

    2023-03-11
    400
  • avx指令集对游戏的影响

    在CPU的一代一代“进化”中,除了频率、缓存乃至核心结构的变化外,有一个不太起眼的升级经常会被小伙伴们忽略,就是“扩展指令集”。指令集很多小伙伴大概耳熟,它就是指挥CPU工作的指令。不过扩展指令集又是什么?对我们使用有什么影响呢? 用一个简单的例子来说,如果说指令集是让CPU理解“9×9就是9个9连加”这种基本常识并进行计算的话,扩展指令集就可以看做是乘法口…

    2023-03-19
    000
  • 正弦函数图像面积怎么求(正弦函数一个拱的面积)

    用“曲线下的面积”来描述积分,就像用一串单词来描述一本书。 正弦函数的积分是其曲线下的面积。几何直觉就是:“正弦的积分是沿圆周路径的水平距离。”这句话第一次听说感觉比较抽象,当你理解了就会觉得它非常的美妙 一般的思维模式求正弦函数的积分就是:用黎曼和原理 在这里我们想象一下sinx的变化 X是我们当前的弧度角。在单位圆上(半径= 1),角度就是沿圆周的距离。…

    2023-03-17
    300
  • jquery特效的设计与制作

    最近在学习jquery,发现jquery上手比javascript容易许多,因为有着良好的文档和帮助手册,如果遇到一些问题可以借助文档来解决。初步接触学习jquery,我发现学习jquery主要是学会如何使用内置的方法。 今天就跟大家一起分享下,我用jquery写的一个banner全屏特效切换的案例,以及制作它运用了哪些jquery内置方法。 思路: 注:这…

    2023-03-16
    300
  • err23数据错误循环冗余检查

    在平时的工作中,我们常常会拷贝数据,但是在拷贝的过程中却发现提示了数据错误循环冗余检查,那么当你遇到Win7提示数据错误循环冗余检查怎么办?下面可可就来教大家Win7提示数据错误循环冗余检查的解决方法吧! 方法/步骤: 1、比如更新驱动程序等操作,出现数据错误(循环冗余检查)的故障,一般是硬盘读写出错了。 2、如果是光盘、U盘、硬盘拷贝数据出现这样的问题,也…

    2023-03-14
    100
  • 泛域名解析是指域名解析服务器,无法启动iisweb服务器

    一、ssl证书支持泛解析教程 1、进入DNS控制后台,鼠标右键点击rtj.n et,在弹出的对话框中,选择新建一个域名,然后在新建DNS域文本框中输入“*”,创建一个名为*的二级区域。最后点击确定。 一般这个区域DNS服务器是允许建立的,接着在.rtj.n et 区域中创建一个空主机名的记录。同上一个步骤一样,右键点击,在弹出对话框中选择新建主机,然后在名称…

    2023-03-14
    300

发表回复

登录后才能评论
返回顶部
错说博客上线啦!