这个专题主要讲information_schema数据库下的一些表

如无特殊说明数据库版本为MySQL 5.7.26


## 1. ENGINES

该表提供存储引擎相关的信息,主要用来确认数据库是否支持该存储引擎以及是否是默认的

该表不是标准的INFORMATION_SCHEMA表

有如下栏位

-  ENGINE 存储引擎的名称
-  SUPPORT 存储引擎的支持级别,后面做介绍
-  COMMENT 对于该存储引擎的一个简介
-  TRANSACTIONS 该存储引擎是否支持事务
-  XA 该存储引擎是否支持分布式事务
-  SAVEPOINTS 该存储引擎是否支持保存点(SAVEPOINTS)
接下来对上面的一些栏位做进一步的介绍


### 1.1 存储引擎的支持级别

该表的SUPPORT栏位有如下可能的值


| 值|意义  |
| --- | --- |
| YES | 引擎是被支持的且被激活 |
| DEFAULT|  同YES,并且是默认的|
|NO  |  引擎不被支持|
|DISABLED  |  引擎是支持的,但被禁用了|


**NO**

代表该存储引擎在编译时没有加上,所以无法被启用

**DISABLED**

可能有如下原因

1. 数据库在启动时加上了禁用该存储引擎的选项
2. 启用该存储引擎所需的条件未满足

我们可以在error日志中找到相应的原因


NDB 存储引擎在未使用ndb时也会显示为DISABLED

所有服务器都支持MyISAM 引擎,它同时也无法被禁用

------------------------------


## 2. 实际截图

```
SELECT * FROM INFORMATION_SCHEMA.ENGINES;
```


[image:831 size:orig]




或者

```
SHOW ENGINES;
```

[image:832 size:orig]



## 3. 参考链接


[https://dev.mysql.com/doc/refman/5.7/en/engines-table.html](https://dev.mysql.com/doc/refman/5.7/en/engines-table.html)