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

2.MyISAM与InnoDB的区别
最常用的就是MyISAM与InnoDB引擎。这两个引擎类型各有优劣,视具体应用而定。基本的差别为:MyISAM类型不支持事务处理等高级处理,而InnoDB类型支持。MyISAM类型的表强调的是性能,其执行数度比InnoDB类型更快,但是不提供事务支持,而InnoDB提供事务支持已经外部键等高级数据库功能。
一般来说,MyISAM适合: (1)做很多count 的计算; (2)插入不频繁,查询非常频繁; (3)没有事务。
InnoDB适合: (1)可靠性要求比较高,或者要求事务; (2)表更新和查询都相当的频繁,并且表锁定的机会比较大的情况指定数据引擎的创建 让所有的灵活性成为可能的开关是提供给ANSI SQL的MySQL扩展——TYPE参数。MySQL能够让你在表格这一层指定数据库引擎,所以它们有时候也指的是table formats。下面的示例代码表明了如何创建分别使用MyISAM、ISAM和HEAP引擎的表格。要注意,创建每个表格的代码是相同的,除了最后的 TYPE参数,这一参数用来指定数据引擎。
3.常用的数据库状态查询语句
#查询当前选中的数据库
select database();
#查询端口
show variables like 'port';
#查询字符集
show variables like 'character%';
#查询最大连接数量
show variables like '%max_connections%';
#查询默认引擎
show variables like 'default_storage_engine';
#查询表状态
show table status where NAME ='users';
#查询test数据库下的所有表名
SELECT TABLE_NAME FROM
information_schema. TABLES
WHERE
table_schema = 'test';
#查询test数据库下users表的所有字段名字和字段类型。
select column_name,column_comment,data_type
from information_schema.columns
where table_name='users' and table_schema='test';
#查看约束
show create table students;