存储引擎的相关知识

一.什么是存储引擎

mysql中建立的库===>文件夹

库中建立的表===>文件

现实生活中我们用来存储数据的文件有不同的类型,每种文件类型对应各自不同的处理机制:比如处理文本用txt类型,处理表格用excel,处理图片用png等

数据库中的表也应该有不同的类型,表的类型不同,会对应mysql不同的存取机制,表类型又称为存储引擎。

存储引擎说白了就是如何存储数据、如何为存储的数据建立索引和如何更新、查询数据等技术的实现方法。因为在关系数据库中数据的存储是以表的形式存
储的,所以存储引擎也可以称为表类型(即存储和操作此表的类型)在Oracle 和SQL Server等数据库中只有一种存储引擎,所有数据存储管理机制都是一
样的。而MySql数据库提供了多种存储引擎。用户可以根据不同的需求为数据表选择不同的存储引擎,用户也可以根据自己的需要编写自己的存储引擎。

 

二.存储引擎的应用

#建表的时候指定存储引擎,上述图有默认的存储引擎
create table t1(id int)engine=innodb;  //存在硬盘里面  innodb存表结构和数据
create table t2(id int)engine=myisam; //把数据存在硬盘中,但是不是在生产环境中用  表结构数据还有索引
create table t3(id int)engine=blackhole; //任何写在存储引擎上的东西都消失了  硬盘存表结构但是没数据文件 
create table t4(id int)engine=memory;  //存在内存里面断电就消失  只有表结构

不同的存储引擎会对应不同的数据存储机制

posted @ 2019-01-08 22:16  王苗鲁  阅读(120)  评论(0)    收藏  举报