如何检查特定数据库的MySQL引擎类型?

joe*_*joe 22 mysql

如何通过mysql查询检查特定数据库的MySQL引擎类型?

Pis*_*3.0 40

在MySQL中,数据库不具有发动机类型; 有引擎类型.友见手册甚至明确指出:

重要的是要记住,您不限于对整个服务器或模式使用相同的存储引擎:您可以为模式中的每个表使用不同的存储引擎.

您可以查询information_schema数据库(在示例中替换您的数据库名称和表名):

SELECT `ENGINE` FROM `information_schema`.`TABLES`
  WHERE `TABLE_SCHEMA`='your_database_name' AND `TABLE_NAME`='your_table_name';
Run Code Online (Sandbox Code Playgroud)

您还可以获取全局环境变量的值storage_engine- 仅在未指定引擎的情况下创建表时将其用作默认值,它不会以任何其他方式影响服务器:

SHOW GLOBAL VARIABLES LIKE 'storage_engine'
Run Code Online (Sandbox Code Playgroud)

  • @joe:您无法读取不存在的内容:-(引擎类型仅适用于各个表. (3认同)

Álv*_*lez 14

数据库没有引擎.表有.您可以运行例如SHOW TABLE STATUS:

SHOW TABLE STATUS FROM mydatabase
Run Code Online (Sandbox Code Playgroud)

可以使用SHOW ENGINES找到可用的引擎.


提示:如果您使用的是官方命令行客户端而不是GUI工具,则可能需要使用该\G命令(不要与小写混淆\g):

将当前语句发送到要执行的服务器,并使用垂直格式显示结果.

......这转变了:

mysql> SHOW TABLE STATUS;
+----------------------------------+--------+---------+------------+------+----------------+-------------+-----------------+-----------
---+-----------+----------------+---------------------+-------------+------------+-------------------+----------+----------------+-----
------------------------------------------------------+
| Name                             | Engine | Version | Row_format | Rows | Avg_row_length | Data_length | Max_data_length | Index_leng
th | Data_free | Auto_increment | Create_time         | Update_time | Check_time | Collation         | Checksum | Create_options | Comm
ent                                                   |
+----------------------------------+--------+---------+------------+------+----------------+-------------+-----------------+-----------
---+-----------+----------------+---------------------+-------------+------------+-------------------+----------+----------------+-----
------------------------------------------------------+
| canal                            | InnoDB |      10 | Compact    |    0 |              0 |       16384 |               0 |
 0 |  27262976 |              1 | 2015-04-10 11:07:01 | NULL        | NULL       | utf8_general_ci   |     NULL |                |
Run Code Online (Sandbox Code Playgroud)

......进入这个:

mysql> SHOW TABLE STATUS\G
*************************** 1. row ***************************
           Name: canal
         Engine: InnoDB
        Version: 10
     Row_format: Compact
           Rows: 0
 Avg_row_length: 0
    Data_length: 16384
Max_data_length: 0
   Index_length: 0
      Data_free: 27262976
 Auto_increment: 1
    Create_time: 2015-04-10 11:07:01
    Update_time: NULL
     Check_time: NULL
      Collation: utf8_general_ci
       Checksum: NULL
 Create_options:
        Comment:
*************************** 2. row ***************************
           Name: cliente
         Engine: InnoDB
[…]
Run Code Online (Sandbox Code Playgroud)