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”。
广告