概述
一:概述
什么是数据库引擎?
MySQL提供了多种存储引擎,存储引擎一定程度上决定了表的能力。数据库引擎包括处理事务安全表的引擎和处理非事务安全表的的引擎。通俗点讲,所谓数据库引擎其实也就是存储数据到文件的技术。不同的技术有不同的存储机制,也就是平常所述的数据库引擎
二:常用数据库引擎有哪些?
1.InnoDB:提供行级锁与外键约束,目标是处理大数据容量(5.7以后的默认存储引擎)
2.MyISAM:不提供行锁与外键约束,但是提供表锁,查询数据较快(曾经的默认引擎)
3.MEMORY:所有数据都在内存中,数据的处理速度快,但安全性不高(断电即失)
三:如何选择?
同一个数据库也可以使用多种存储引擎。不同的表可以使用不同的存储引擎,也就是说,数据库引擎是针对表的(SQL文件中的建表语句最后都会指定数据库引擎的)。如果一个表需要提供事务支持,或者需要大量的增删改操作,可以选择innodb,如果对查询要求比较高,可以选择MyISAM存储机制,如果需要用于查询的临时表,可以选择MEMOR引擎
四:MyISAM与InnoDB存储结构上的区别(文件形式)
1.MyISAM引擎每创建一个表都会产生3个文件,分别是.MYD,.MYI以及.frm
(1).MYD:意为mydata,该文件用来存储数据
(2).MYI:意为myindex,该文件用来存储表索引
(3).frm:意为framework,该文件用来存储表架构
mysql数据库(自带的那个)就是使用该引擎的,因为该数据库查询需求多,删除或更改需求少
2.InnoDB:数据库每创建一个表都会产生2个文件,分别是.ibd与.frm文件
(1).ibd:用来存储数据与索引(这一点与MyISAM不同)
(2).frm:用来存储表结构(这一点与MyISAM相同)
当数据库所在的服务器由于某种原因,导致本地连接不上数据库时,可以通过直接操作数据库对应的文件,如.ibd与.frm来恢复表数据与表结构
最后
以上就是专一火龙果为你收集整理的对于数据库引擎的总结的全部内容,希望文章能够帮你解决对于数据库引擎的总结所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复