MySQL中默认启用了INNODB吗?


是的,从 MySQL 版本 4.0 开始,默认启用了它。在此,我们使用 MySQL 版本 8.0.1 −

mysql> select version();
+-----------+
| version() |

+-----------+
| 8.0.12    |
+-----------+
1 row in set (0.00 sec)

现在,让我们检查 my.ini,其中可以看到默认引擎类型 InnoDB −

我们首先创建两个表。其中一个将使用引擎类型进行设置,而另一个将不会使用引擎类型进行设置。

第一个表 −

mysql> create table DemoTable1(Id int NOT NULL AUTO_INCREMENT PRIMARY KEY);
Query OK, 0 rows affected (0.80 sec)

第二个表使用 ENGINE InnoDB 设置 −

mysql> create table DemoTable2(
   Id int NOT NULL AUTO_INCREMENT PRIMARY KEY
) ENGINE=InnoDB;
Query OK, 0 rows affected (0.76 sec)

无论你是否提到了引擎类型,上面两个表都具有引擎类型 InnoDB。

让我们检查第一个表的引擎类型 −

mysql> select engine from information_schema.TABLES where TABLE_SCHEMA = 'web' and table_name='DemoTable1';
+--------+
| ENGINE |
+--------+
| InnoDB |
+--------+
1 row in set (0.56 sec)

现在,让我们检查第二个表的引擎类型 −

mysql> select engine from information_schema.TABLES where TABLE_SCHEMA = 'web' and table_name='DemoTable2';
+--------+
| ENGINE |
+--------+
| InnoDB |
+--------+
1 row in set (0.00 sec)

正如你可以看到的,上面两个表都显示引擎类型为“InnoDB”。即使我们没有在 DemoTable1 中提到引擎类型,可见的引擎类型仍然是“InnoDB”。

更新于:2019 年 9 月 3 日

128 次浏览

开启你的 职业生涯

通过完成课程获得认证

入门
广告