我的MySQL数据库包含几个使用不同存储引擎的表 (特别是myisam和innodb)。我怎么知道是哪几张桌子呢 使用哪个引擎?


当前回答

如果您正在使用MySQL Workbench,右键单击一个表并选择alter table。

在这个窗口中,您可以看到您的表Engine,也可以更改它。

其他回答

SHOW CREATE TABLE <tablename>\G

它的格式会比输出更好吗

SHOW CREATE TABLE <tablename>;

\G技巧对于许多其他查询/命令也很有用。

mysqlshow -i <database_name>

将显示特定数据库的所有表的信息。

mysqlshow -i <database_name> <table_name> 

只对一个特定的表这样做。

显示数据库表状态;

它将列出上述数据库中的所有表。 示例输出

显示name=your_desired_table_name表状态;

它将显示上述表使用的存储引擎。

或者运行这个:

show table status;

这将列出数据库上的所有表和相关详细信息。

还有另一种方法,可能是获取单个或匹配的表集状态的最短方法:

SHOW TABLE STATUS LIKE 'table';

然后你可以使用LIKE操作符,例如:

SHOW TABLE STATUS LIKE 'field_data_%';