查看支持的存储引擎
show engines;
查看当前默认存储引擎
show variables like '%storage_engine%';
从体系结构图中可以发现,MySQL 数据库区别于其他数据库的最重要的一个 特点就是其插件式的表存储引擎。MySQL 插件式的存储引擎架构提供了一系列标准的管理和服务支持,这些标准与存储引擎本身无关,可能是每个数据库系统本 身都必需的,如 SQL 分析器和优化器等,而存储引擎是底层物理结构和实际文件 读写的实现,每个存储引擎开发者可以按照自己的意愿来进行开发。需要特别注 意的是,存储引擎是基于表的,而不是数据库。
插件式存储引擎的好处是,每个存储引擎都有各自的特点,能够根据具体的 应用建立不同存储引擎表。由于 MySQL 数据库的开源特性,用户可以根据 MySQL 预定义的存储引擎接口编写自己的存储引擎。若用户对某一种存储引擎的性能或 功能不满意,可以通过修改源码来得到想要的特性,这就是开源带给我们的方便与力量。
由于 MySQL 数据库开源特性,存储引擎可以分为 MySQL 官方存储引擎和第 三方存储引擎。有些第三方存储引擎很强大,如大名鼎鼎的 InnoDB 存储引擎(最 早是第三方存储引擎,后被 Oracle 收购),其应用就极其广泛,甚至是 MySQL 数据库 OLTP(Online Transaction Processing 在线事务处理)应用中使用最广泛的存储引擎。