首页 > 文章列表 > 如何将MySQL中的MyISAM存储引擎转换为InnoDB存储引擎?

如何将MySQL中的MyISAM存储引擎转换为InnoDB存储引擎?

181 2023-08-26

要将MyISAM引擎转换为InnoDB,我们可以使用ALTER命令。现在让我们借助引擎MyISAM 创建一个表。

mysql> create table MyISAMToInnoDBDemo
   -> (
   -> id int,
   -> Name varchar(100)
   -> )ENGINE=MyISAM;
Query OK, 0 rows affected (0.19 sec)

检查表是否是用MyISAM引擎创建的。

mysql> SELECT TABLE_NAME,ENGINE FROM information_schema.TABLES WHERE TABLE_SCHEMA = 'business' and ENGINE = 'MyISAM';

以下是使用MyISAM引擎创建的表的输出。

+-------------------------+--------+
| TABLE_NAME              | ENGINE |
+-------------------------+--------+
| studentrecordwithmyisam | MyISAM |
+-------------------------+--------+
1 row in set (0.00 sec)

我们可以借助ALTER命令将MyISAM转换为InnoDB。

mysql> alter table MyISAMToInnoDBDemo engine=InnoDB;
Query OK, 0 rows affected (1.65 sec)
Records: 0  Duplicates: 0  Warnings: 0

检查转换。

mysql> SELECT TABLE_NAME,ENGINE FROM information_schema.TABLES WHERE TABLE_SCHEMA = 'test' and ENGINE = 'InnoDB';

这是输出。

+--------------------+--------+
| TABLE_NAME         | ENGINE |
+--------------------+--------+
| myisamtoinnodbdemo | InnoDB |
+--------------------+--------+
1 row in set (0.00 sec)