热线电话:13121318867

登录
2018-10-24 阅读量: 901
MySQL存储引擎

数据库存储引擎是数据库底层软件组织,数据库管理系统(DBMS)使用数据引擎进行创建、查询、更新和删除数据。不同的存储引擎提供不同的存储机制、索引技巧、锁定水平等功能,使用不同的存储引擎,还可以获得特定的功能。现在许多不同的数据库管理系统都支持多种不同的数据引擎。MySql的核心就是存储引擎。

一、存储引擎的类型

MySQL支持MyISAM、InnoDB、MERGE、MEMORY(HEAP)、BDB(BerkeleyDB)、EXAMPLE、FEDERATED、ARCHIVE等多种存储引擎。

二、查看存储引擎

可以使用命令SHOW ENGINES;查看MySQL使用的引擎

如果要想查看数据库默认使用哪个引擎,可以通过使用命令SHOW VARIABLES LIKE ‘storage_engine%’;来查看

在MySQL中,不需要在整个服务器中使用同一种存储引擎,针对具体的要求,可以对每一个表使用不同的存储引擎。Support列的值表示某种引擎是否能使用:YES表示可以使用、NO表示不能使用、DEFAULT表示该引擎为当前默认的存储引擎 。

创建数据表时可设置存储引擎,语法:CREATE BABLE 表名(

)ENGINE=存储引擎

三、选择存储引擎

不同的存储引擎都有各自的特点,以适应不同的需求

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

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

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

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

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

0.0000
4
关注作者
收藏
评论(0)

发表评论

暂无数据
推荐帖子