我的MySQL数据库包含几个使用不同存储引擎的表 (特别是myisam和innodb)。我怎么知道是哪几张桌子呢 使用哪个引擎?
当前回答
显示数据库表状态;
它将列出上述数据库中的所有表。 示例输出
显示name=your_desired_table_name表状态;
它将显示上述表使用的存储引擎。
其他回答
SHOW CREATE TABLE <tablename>;
可解析性较差,但可读性比SHOW TABLE STATUS强。
要显示数据库中所有表及其引擎的列表,使用下面的SQL查询:
SELECT TABLE_NAME,
ENGINE
FROM information_schema.TABLES
WHERE TABLE_SCHEMA = 'dbname';
将dbname替换为数据库名称。
如果你是一个GUI的家伙,只是想在PhpMyAdmin中找到它,然后选择你选择的表,并在操作选项卡>>表选项>>存储引擎。 您甚至可以从那里使用下拉选项列表更改它。
PS:本指南基于PhpMyAdmin的4.8版本。不能保证非常旧的版本有相同的路径。
转到information_schema数据库,你会发现'tables'表,然后选择它;
Mysql >使用information_schema; Mysql> select table_name, from tables;
还有另一种方法,可能是获取单个或匹配的表集状态的最短方法:
SHOW TABLE STATUS LIKE 'table';
然后你可以使用LIKE操作符,例如:
SHOW TABLE STATUS LIKE 'field_data_%';
推荐文章
- 如何停止mysqld
- 检查MySQL表是否存在而不使用“select from”语法?
- 从NOW() -1天选择记录
- 从表中选择1是什么意思?
- 数据库性能调优有哪些资源?
- 如何更改表的默认排序规则?
- MySQL foreign_key_checks是否影响整个数据库?
- 设置NOW()为datetime数据类型的默认值?
- 在MySQL中Datetime等于或大于今天
- 删除MySQL中的主键
- 我如何在MySQL中添加更多的成员到我的enum类型列?
- 相当于varchar(max)在MySQL?
- PHP与MySQL 8.0+错误:服务器请求身份验证方法未知的客户端
- laravel5“LIKE”对等物(雄辩的)
- PHP PDO:字符集,集名称?